18746
18427
137
170
461
107
133
273
183
212
471
445
350
343
453
148
106
223
197
348
66
498
432
256
195
302
424
335
405
191
484
175
305
229
138
66
373
248
337
207
268
282
386
211
211
70
211
74
500
350
351
232
471
367
269
388
381
363
178
219
279
321
68
172
429
212
431
115
402
126
149
339
301
203
135
237
480
241
344
349
71
240
104
129
179
466
470
196
186
70
469
360
337
325
227
448
360
485
79
140
263
244
173
249
67
277
235
296
280
451
74
319
107
269
455
449
287
171
380
139
282
80
357
415
184
417
464
297
239
376
369
359
293
358
467
486
63
465
259
81
57
113
72
266
495
398
436
115
327
151
384
334
108
289
496
347
201
178
484
499
229
388
357
410
345
332
127
493
137
200
269
212
259
495
499
92
380
478
335
319
365
268
234
434
261
304
389
205
316
210
465
277
436
385
445
248
425
414
312
75
348
223
401
200
190
185
193
393
300
348
306
476
89
314
288
363
296
273
340
364
384
176
254
457
429
175
196
367
232
351
279
112
308
79
77
166
401
486
455
345
296
356
109
318
378
428
87
76
381
246
438
103
327
67
306
432
495
129
448
391
175
300
431
340
54
394
273
476
467
333
199
211
346
414
489
82
285
154
271
171
151
102
275
216
375
288
157
98
110
335
55
374
378
91
174
397
380
177
161
130
106
158
451
480
109
321
70
473
318
463
427
153
109
234
449
328
242
334
401
81
179
237
333
293
365
456
145
80
441
493
147
203
442
450
115
107
430
451
124
319
207
206
67
219
394
419
286
254
256
238
154
179
56
407
187
310
438
58
327
214
58
396
81
285
487
319
231
286
213
432
239
121
468
412
281
134
383
420
400
319
80
280
101
366
116
146
464
275
448
447
65
133
407
358
183
381
371
409
289
333
399
276
188
141
235
131
187
406
315
385
472
83
482
61
262
353
347
276
498
228
455
450
229
360
124
120
451
311
467
184
308
70
402
82
275
386
198
351
330
272
346
159
241
353
444
395
389
194
206
119
428
105
82
198
346
54
162
305
59
355
268
208
321
277
77
317
259
391
416
121
87
136
345
263
396
260
442
171
314
120
298
171
275
74
74
205
91
217
76
315
464
356
112
184
194
205
99
112
414
245
226
475
464
321
51
98
101
455
168
59
361
71
306
346
179
66
476
168
186
63
302
120
238
316
278
411
288
85
66
98
434
297
415
86
450
97
167
308
207
233
63
170
428
96
337
79
332
291
479
61
488
229
386
470
444
459
87
136
237
417
80
54
366
269
339
150
153
229
298
281
82
169
208
442
251
178
245
55
437
105
357
488
102
399
218
85
204
293
395
85
189
94
107
150
139
146
104
279
55
211
56
282
438
68
194
456
191
419
355
484
446
425
169
372
291
60
386
192
50
50
433
438
89
308
270
465
76
67
334
436
355
395
388
390
179
441
74
162
374
196
411
94
85
80
235
342
223
333
183
339
124
186
347
390
450
170
160
115
320
414
377
339
119
247
392
216
240
309
174
105
396
99
313
161
291
461
199
468
82
72
200
430
477
150
397
368
471
320
334
51
142
440
437
320
57
191
120
450
345
412
296
187
88
495
438
419
447
493
403
71
152
210
124
125
323
367
447
462
446
444
170
417
492
183
218
133
387
97
111
77
271
83
149
380
352
198
67
426
53
207
309
173
340
257
390
400
304
378
470
51
480
119
192
216
246
461
254
126
449
365
355
149
141
441
52
143
101
310
409
175
429
382
371
285
239
356
460
156
437
131
247
370
201
479
359
402
92
178
115
462
457
404
186
348
242
453
441
320
118
329
355
193
94
444
59
448
455
130
174
489
485
102
124
96
233
427
304
414
204
441
242
219
385
489
238
122
250
198
332
406
481
480
100
415
313
330
495
274
173
355
62
232
416
471
56
415
124
102
348
96
370
368
264
242
210
114
175
285
345
434
358
311
426
316
317
452
221
468
343
399
486
212
374
341
149
460
212
162
304
51
198
176
218
369
66
135
314
286
64
163
139
417
427
427
229
139
260
68
119
73
233
261
375
101
271
65
171
152
410
175
115
295
496
260
412
144
135
157
106
460
432
439
244
204
316
168
486
281
439
411
50
163
460
181
395
500
367
429
196
412
456
363
103
72
181
60
260
253
434
255
253
296
240
364
484
491
267
392
70
162
79
165
76
248
378
173
271
494
354
208
498
477
486
284
204
162
214
201
229
490
439
63
495
92
136
420
140
327
119
478
387
404
417
418
358
71
409
66
180
66
323
207
435
230
393
426
229
92
130
346
184
303
360
334
385
201
488
311
376
168
121
105
481
456
483
248
311
260
156
437
204
406
410
235
345
250
471
477
485
127
63
68
379
296
428
242
256
71
124
71
111
303
364
348
85
247
205
426
429
56
57
389
93
437
377
74
147
93
300
497
62
283
457
340
138
71
287
57
155
277
445
401
123
427
174
189
320
91
211
212
99
385
70
318
143
443
186
360
151
304
428
107
334
247
117
453
70
273
169
259
64
96
418
148
210
224
83
66
271
492
236
187
487
115
424
97
293
93
145
332
409
490
200
336
205
308
155
322
168
100
168
219
264
121
325
380
189
109
287
423
480
196
109
313
137
310
163
290
104
50
219
118
89
161
280
201
151
428
359
89
122
155
178
264
404
122
253
194
483
364
319
114
482
104
189
80
224
151
70
163
322
177
419
310
417
128
354
417
233
469
212
214
406
289
331
210
440
338
431
481
170
52
359
394
216
459
246
210
79
173
198
129
426
297
267
208
368
129
50
458
373
444
106
428
152
101
84
282
348
325
365
94
52
214
495
139
414
354
465
292
370
117
454
390
459
422
321
131
470
145
174
57
211
364
172
265
126
388
225
404
251
459
72
169
181
223
51
343
328
280
66
263
285
57
196
252
147
342
101
488
489
124
190
477
173
124
385
335
139
174
166
326
239
480
411
93
385
386
406
304
198
116
364
61
383
353
357
191
497
109
335
158
381
246
370
179
362
302
234
175
345
396
176
276
394
366
254
400
213
151
78
364
496
131
291
267
178
320
259
374
496
292
430
226
280
92
468
245
379
353
190
428
225
199
472
261
199
187
75
487
485
365
323
111
73
432
463
94
484
145
62
54
202
492
454
297
413
254
115
80
167
419
202
199
366
264
410
263
136
124
393
93
96
290
143
284
482
75
388
421
77
314
84
386
90
77
255
308
147
220
500
451
381
493
110
67
429
488
228
81
159
496
351
301
272
496
490
107
494
179
118
329
300
431
302
229
192
358
72
319
172
453
111
277
355
277
450
56
152
320
229
328
225
252
462
275
57
144
163
297
424
192
108
241
373
350
314
239
91
204
122
92
251
454
418
168
183
417
274
83
327
95
55
461
389
162
160
134
426
392
80
221
216
91
106
183
321
453
459
324
58
154
170
424
251
289
102
134
192
425
325
56
445
479
237
316
438
408
305
217
247
386
123
478
245
211
458
359
79
413
440
340
408
164
52
249
484
221
93
331
452
395
464
395
288
457
359
275
103
205
404
188
320
491
82
120
391
200
173
103
278
431
229
210
377
321
311
436
174
421
100
170
454
394
409
263
125
404
393
306
60
294
252
383
454
211
496
87
64
480
360
265
438
473
302
253
467
138
109
441
304
402
86
78
483
226
368
439
53
111
403
451
164
235
461
63
194
250
190
139
271
235
102
131
480
288
209
220
452
154
125
321
166
263
386
118
222
383
499
433
282
250
418
344
304
419
312
157
324
304
466
190
357
109
187
240
409
498
124
279
253
72
385
92
220
68
328
242
265
225
284
283
57
459
101
82
233
176
193
138
368
176
342
480
436
214
366
463
83
430
400
179
97
51
238
90
311
495
64
123
364
407
214
113
175
86
430
118
413
369
393
113
186
115
376
257
94
460
236
371
97
77
361
422
487
203
290
433
444
242
422
161
237
340
287
327
363
140
244
174
437
399
428
299
106
103
123
231
454
365
59
333
142
241
153
330
274
356
361
278
213
443
473
356
256
255
472
345
320
152
132
147
334
102
237
62
308
410
279
334
325
235
148
59
390
391
353
116
482
126
453
109
405
414
260
324
465
230
289
155
378
226
75
110
162
308
149
453
455
357
159
441
165
212
480
454
288
314
458
191
401
336
266
307
255
462
488
321
208
382
133
323
473
133
415
103
320
155
370
221
217
189
267
299
207
296
446
448
292
204
402
360
192
148
298
50
435
55
363
198
280
500
294
463
173
227
311
472
195
152
343
371
388
491
306
266
457
244
331
482
176
171
172
359
235
208
146
150
232
81
314
91
465
363
178
170
212
480
288
474
147
422
170
165
138
199
483
486
340
103
79
223
89
229
433
443
383
226
354
417
470
206
67
226
89
149
319
124
355
350
334
61
467
333
328
354
278
73
173
253
274
263
365
368
428
126
50
61
373
64
82
339
406
480
55
233
72
257
266
379
198
297
103
206
322
113
470
498
176
144
351
365
184
331
400
482
217
473
220
403
299
169
70
153
215
424
307
419
237
72
152
159
413
149
108
217
452
367
139
233
360
473
491
307
362
348
276
442
451
336
164
439
481
163
136
389
51
217
478
326
289
470
299
429
205
358
154
185
271
93
440
201
207
193
70
357
362
494
479
123
422
132
134
83
378
256
50
245
401
186
57
381
264
418
328
66
229
446
402
315
223
164
340
165
369
288
266
224
436
425
180
474
498
168
142
270
429
422
455
344
274
346
116
81
352
119
444
461
138
142
238
106
369
75
264
155
395
485
240
192
471
174
114
91
52
291
370
177
343
280
75
433
223
101
255
341
336
97
149
66
394
165
160
338
110
256
263
215
443
351
188
454
183
428
148
467
207
364
205
302
419
388
268
137
227
133
309
144
353
135
318
347
166
162
297
388
280
291
382
461
397
156
162
83
320
485
305
90
433
431
367
460
197
191
473
446
441
313
343
127
447
122
472
196
408
57
410
205
270
129
114
480
151
493
213
246
129
378
277
335
474
446
187
115
153
216
276
263
294
362
500
448
132
310
139
110
429
273
381
405
285
457
252
184
452
498
281
63
240
67
500
471
312
196
254
176
132
87
130
451
343
238
126
137
311
385
277
72
449
390
410
326
217
455
169
297
122
186
118
465
495
86
315
476
480
111
220
350
394
296
460
446
185
212
162
64
389
363
90
156
299
350
142
377
318
136
422
308
445
269
271
126
71
146
297
255
477
447
414
197
118
464
167
111
365
495
211
491
89
224
335
321
444
253
448
258
258
198
291
310
222
335
270
128
467
297
352
64
463
68
275
99
154
326
263
118
488
291
333
282
367
123
361
342
472
74
121
337
465
455
341
247
346
459
413
384
267
467
454
366
129
97
368
325
438
153
348
67
254
198
359
331
97
179
171
434
163
442
353
195
312
500
390
363
172
129
323
373
247
76
322
72
264
459
302
85
372
249
209
406
280
133
339
284
285
122
399
275
319
432
246
492
317
491
380
235
399
439
60
51
420
477
286
60
342
446
69
347
149
292
51
93
202
372
140
449
435
464
405
67
324
311
175
210
453
79
434
156
358
234
372
123
80
171
471
484
102
142
75
122
219
177
141
268
433
293
387
365
292
349
373
233
202
337
114
204
334
287
319
98
108
323
335
304
464
156
338
129
111
406
53
150
141
242
377
171
192
161
142
379
312
55
306
51
165
409
244
258
480
422
428
163
340
205
297
217
262
150
352
279
380
282
445
337
202
381
52
99
375
188
385
300
113
162
327
384
500
343
202
281
73
339
139
274
268
86
397
50
427
494
406
480
158
348
257
242
398
269
258
231
324
401
247
293
408
377
405
310
111
273
108
164
350
269
253
319
409
363
410
235
381
395
141
107
192
403
401
117
318
475
295
54
177
272
459
439
123
188
57
270
439
401
82
338
274
236
352
101
295
454
93
223
379
435
391
451
420
339
467
288
173
62
213
451
211
141
404
350
434
155
280
482
337
272
247
133
427
346
162
199
88
409
359
433
462
329
91
152
473
229
424
69
268
198
339
136
183
285
178
462
464
193
383
323
140
230
94
299
421
107
131
423
193
69
428
164
179
239
88
375
478
396
194
326
159
333
126
303
493
331
67
324
66
226
228
71
475
410
358
146
457
75
189
273
340
64
206
468
442
321
197
132
369
471
145
392
343
494
336
282
336
98
181
158
422
279
359
290
410
166
225
440
209
167
253
172
129
334
400
271
317
328
382
475
236
444
129
427
159
96
477
96
274
126
463
145
140
493
447
74
194
301
477
111
97
390
96
468
281
207
447
253
329
356
365
150
215
274
105
74
145
442
195
349
334
279
178
353
119
397
485
328
92
405
116
427
232
326
249
135
322
411
106
253
396
311
457
401
380
115
124
474
147
405
198
105
122
201
213
162
324
364
273
308
205
490
442
445
411
295
251
171
135
470
405
263
231
216
310
316
286
163
269
301
68
328
113
84
194
105
80
115
191
171
131
64
336
363
160
136
184
159
148
376
453
422
260
472
364
361
345
239
120
175
57
114
180
119
410
369
127
492
92
308
470
181
197
327
267
216
302
323
335
477
378
319
459
221
264
341
441
467
397
238
136
56
427
460
161
174
63
256
296
423
369
236
245
471
87
165
55
77
451
197
281
107
445
95
205
178
200
350
233
218
98
273
188
97
340
239
453
255
101
227
453
324
458
129
241
398
261
241
315
430
233
498
312
497
305
194
337
225
244
337
211
297
405
243
67
391
258
239
117
252
70
98
240
204
243
286
114
319
255
262
335
67
205
481
288
289
194
149
134
363
332
167
412
138
195
312
255
293
420
115
252
373
339
262
287
489
467
469
272
292
453
200
463
296
165
208
240
305
215
257
165
119
418
61
266
303
394
340
499
134
293
480
209
346
335
61
437
66
60
207
279
70
230
68
243
191
122
71
384
171
114
115
97
334
83
223
287
136
470
105
178
98
320
142
59
261
380
484
73
93
468
138
384
197
373
93
422
395
125
408
379
214
422
480
199
361
335
182
177
311
344
184
465
478
183
243
271
311
383
227
454
421
213
115
338
151
87
71
56
104
305
222
330
438
76
427
376
93
300
306
486
156
424
490
368
237
178
285
126
378
338
374
313
366
89
322
244
413
342
461
387
499
331
417
149
481
55
181
234
403
447
362
233
161
242
197
138
350
440
331
379
385
214
321
196
495
336
463
500
248
470
227
372
66
404
290
494
238
218
176
448
162
142
69
261
84
203
52
389
218
168
258
362
410
226
281
68
469
96
233
271
285
378
339
253
441
259
115
51
297
255
327
425
399
411
290
171
436
149
285
85
216
374
206
283
74
150
450
451
454
182
219
279
209
55
302
271
380
369
298
351
282
297
257
217
158
64
472
154
68
445
394
196
63
435
211
145
87
164
490
261
185
121
191
424
470
424
378
426
76
461
130
141
74
301
107
211
75
119
292
151
239
410
106
379
167
246
142
360
324
176
101
50
471
299
463
248
160
171
329
264
258
311
214
64
282
317
368
304
269
239
291
378
472
321
448
348
380
263
275
470
65
167
114
466
469
192
222
253
497
485
312
176
243
449
93
72
470
147
90
94
372
230
236
337
249
205
450
309
491
222
408
191
92
464
429
398
87
454
476
471
366
457
431
346
444
162
262
284
218
263
141
131
221
145
387
455
133
125
187
214
181
102
80
474
300
468
455
90
286
292
197
116
232
341
456
261
216
485
95
345
433
301
54
199
461
248
229
127
145
131
403
404
438
60
431
282
320
357
96
451
257
371
411
209
265
403
448
474
370
199
317
423
437
417
337
295
79
497
183
278
126
120
271
245
217
191
424
141
311
225
304
135
414
239
176
73
166
67
314
465
435
261
463
246
137
426
320
169
384
90
233
470
207
397
368
445
488
231
198
371
370
99
360
180
124
354
132
284
251
440
193
452
103
357
228
450
311
478
361
446
280
231
161
428
392
205
258
390
179
336
370
252
379
372
470
155
353
192
283
195
319
444
381
85
269
454
97
226
291
192
358
177
464
402
373
380
137
319
212
149
200
445
58
124
143
487
394
278
483
366
394
95
322
492
55
386
98
350
108
168
211
244
441
495
328
160
409
89
149
235
130
374
412
200
175
350
179
392
372
279
59
379
440
409
436
455
192
312
115
171
277
397
240
326
492
59
410
246
222
80
317
74
162
278
493
84
308
270
341
56
303
472
262
205
464
211
328
278
491
475
166
463
388
278
158
423
356
483
237
147
140
265
431
253
435
289
140
180
97
300
479
156
189
57
487
139
317
265
71
483
184
409
497
235
319
393
99
195
213
292
70
95
77
370
388
403
319
477
160
408
139
272
348
110
324
364
156
438
417
494
245
366
382
351
401
473
498
178
326
133
146
51
297
498
439
220
164
352
331
452
80
77
346
91
346
335
496
294
447
101
246
258
362
114
114
107
163
64
473
335
270
223
405
158
124
393
175
466
341
426
428
290
356
63
61
293
331
199
290
231
439
126
324
115
483
102
96
478
272
196
93
157
376
145
346
225
97
135
312
431
144
277
60
281
463
252
291
396
227
388
76
331
164
386
288
218
488
216
156
244
487
440
188
278
405
484
196
369
278
140
124
342
253
254
491
178
203
87
483
361
215
243
330
343
173
104
57
120
202
221
52
377
430
143
424
263
89
222
448
137
50
250
454
167
153
448
214
107
258
371
463
404
177
107
73
255
211
118
269
498
399
308
423
375
433
84
186
214
54
307
204
55
214
211
240
253
193
179
147
394
85
367
488
351
237
127
456
379
149
150
263
379
71
194
222
63
451
194
56
140
460
434
151
174
464
130
264
315
413
468
475
416
178
345
61
126
449
389
408
316
422
239
405
297
62
275
324
150
256
95
435
201
343
349
131
55
99
193
204
184
282
133
146
350
401
305
198
470
435
418
210
379
279
310
127
342
112
465
149
360
408
319
435
362
290
398
239
270
167
388
393
429
66
277
157
299
190
98
439
275
388
459
394
409
465
155
339
345
98
156
209
411
155
373
173
55
243
131
80
331
148
285
215
480
348
105
242
77
253
54
72
314
155
208
164
199
484
130
58
316
497
139
67
133
266
199
476
485
249
350
211
430
421
79
61
73
130
229
66
415
337
100
257
492
498
200
292
260
408
338
388
448
158
436
423
130
52
460
236
473
79
172
172
448
479
471
96
305
83
142
288
114
252
407
383
315
244
250
169
437
236
105
99
451
390
88
126
497
309
163
324
360
228
390
249
188
486
460
411
231
376
124
179
314
437
341
280
319
319
79
319
482
171
136
264
488
345
251
292
326
339
108
170
467
297
152
370
307
290
346
260
84
307
135
82
472
147
323
225
319
443
456
238
226
181
88
314
295
114
338
293
465
203
477
281
153
292
86
497
173
457
99
364
114
456
402
452
474
198
69
266
81
159
405
466
430
170
314
442
435
152
471
116
391
432
279
426
117
179
60
100
306
374
111
183
446
216
317
95
416
139
494
127
338
305
181
392
491
119
448
215
61
349
143
310
462
378
481
275
263
495
266
154
427
483
69
416
161
68
275
272
469
491
393
235
92
306
155
250
157
154
498
409
463
494
299
257
411
459
255
106
149
417
474
450
368
487
161
240
229
383
484
60
371
376
454
206
272
103
90
216
353
267
260
182
354
333
201
316
62
54
485
230
228
178
150
499
478
59
109
443
260
125
390
391
436
275
270
106
300
271
341
173
478
380
417
142
214
260
464
458
396
342
382
133
376
474
317
283
444
95
380
431
152
395
233
159
164
206
304
392
264
128
231
108
277
339
173
220
346
179
314
307
430
232
80
181
270
143
414
482
488
394
336
122
309
329
480
200
451
69
202
201
488
432
289
452
74
184
200
259
273
63
147
427
195
374
250
218
224
418
346
460
123
401
392
356
165
345
475
197
321
385
271
164
105
390
232
364
127
397
197
436
211
376
117
396
335
380
482
493
250
148
429
360
206
175
383
289
215
389
95
334
65
122
408
86
406
352
308
140
459
368
89
219
313
246
118
259
357
414
209
222
324
234
299
482
407
460
125
274
337
322
482
366
374
488
143
385
62
113
364
144
133
311
240
448
77
420
338
151
337
464
290
407
115
65
484
166
431
195
380
440
139
431
129
215
119
313
453
342
347
338
87
421
208
144
332
424
155
54
475
131
187
402
206
138
460
483
235
375
232
181
194
145
480
127
216
75
375
249
168
104
336
246
191
244
154
465
72
391
195
332
300
357
413
284
220
59
429
167
113
336
277
350
360
479
321
159
444
299
61
363
106
153
467
436
413
455
303
252
262
77
174
232
77
249
379
170
482
397
332
56
389
440
323
307
198
158
324
499
402
249
439
173
105
134
465
70
202
284
277
146
357
224
337
209
213
165
58
154
471
164
495
394
370
358
401
429
119
304
392
345
146
477
387
308
275
171
215
396
477
214
111
251
377
458
371
133
460
94
329
376
354
71
189
367
466
124
74
97
411
110
438
98
240
361
170
423
194
309
282
350
60
431
489
224
154
254
140
181
168
434
93
275
172
478
497
241
295
285
126
150
386
238
406
222
358
53
477
84
103
138
106
67
356
339
446
161
462
276
139
122
131
275
352
178
464
84
97
240
77
491
350
119
195
255
305
305
186
195
70
341
456
134
367
108
79
393
391
132
230
75
147
294
397
470
357
323
169
209
290
91
414
402
88
215
500
190
323
319
264
65
102
190
496
103
500
382
142
267
224
135
199
389
266
416
414
433
492
124
263
493
498
127
233
204
444
399
440
336
358
138
415
275
431
256
170
155
88
418
456
89
218
355
55
99
220
183
313
223
256
488
383
142
59
339
57
449
78
252
393
417
202
96
279
183
304
128
374
160
234
433
278
459
203
485
203
228
73
500
403
84
123
222
312
266
357
289
432
439
232
267
302
184
462
188
356
384
402
276
70
261
65
266
143
195
380
474
179
309
435
314
299
363
127
457
300
284
357
408
115
341
190
383
311
451
244
345
94
314
454
188
386
235
396
476
476
475
187
356
499
128
92
211
110
300
121
248
258
321
447
215
473
240
232
166
470
67
148
356
444
76
437
117
377
241
188
340
210
327
193
155
263
317
323
450
420
70
308
225
233
341
421
105
363
482
379
469
211
311
423
381
303
320
298
115
118
99
243
58
358
308
309
205
142
138
131
440
138
355
253
289
350
50
400
64
297
385
313
166
298
428
472
414
487
159
274
432
139
431
102
393
227
134
371
361
342
140
132
166
98
100
475
474
330
148
466
461
368
324
130
184
267
242
344
424
145
214
262
249
91
279
71
162
235
374
211
81
136
104
443
224
283
178
252
112
345
216
471
312
186
214
59
376
277
486
91
300
389
215
127
444
260
369
322
370
254
202
470
104
330
189
97
128
272
299
266
414
62
62
287
95
308
175
129
275
223
461
76
327
269
66
411
400
257
190
388
306
428
229
427
383
311
242
411
307
66
238
359
107
275
473
318
476
473
322
203
147
383
212
327
481
345
352
466
178
246
58
442
327
132
184
105
269
104
202
484
419
305
184
457
388
75
247
184
94
137
146
419
370
386
224
288
99
191
300
142
63
227
182
58
129
208
376
242
109
201
148
180
190
168
370
214
254
195
244
236
178
443
286
291
422
226
408
87
108
313
267
189
320
493
484
276
380
72
76
154
459
265
429
289
146
68
141
211
271
334
349
164
164
72
360
405
82
272
382
413
85
320
338
63
154
424
145
71
248
455
131
377
138
276
258
493
74
395
480
434
182
173
306
205
325
312
293
119
70
392
427
140
352
434
226
98
108
120
228
301
214
237
417
344
104
240
206
83
53
264
259
367
451
150
448
415
294
245
161
197
451
389
92
319
411
79
468
187
271
177
271
442
212
461
95
194
142
358
164
497
496
118
177
292
397
370
335
53
129
242
383
205
478
274
438
347
405
424
78
443
349
200
453
316
81
367
172
78
433
161
207
79
126
463
353
104
452
163
167
431
449
66
335
314
474
193
102
118
214
437
362
83
93
445
480
400
95
100
158
321
230
200
279
242
112
92
82
318
272
209
486
405
107
160
446
270
376
115
218
215
238
99
475
444
202
470
412
53
242
459
408
278
323
458
385
380
227
488
397
349
311
269
108
358
268
228
331
226
206
345
124
286
85
490
157
50
113
198
348
346
368
124
219
215
246
380
496
380
379
441
405
192
344
279
98
490
186
195
298
105
388
391
426
364
267
256
173
327
361
451
238
216
493
494
265
322
441
285
155
180
372
462
98
207
119
80
263
477
427
381
282
463
394
403
472
272
496
448
450
353
343
376
430
188
184
175
52
260
410
490
295
256
458
113
261
286
279
104
323
208
205
215
243
465
468
301
307
399
403
404
454
368
487
366
168
62
493
393
169
438
282
440
67
397
405
385
410
232
127
392
331
56
186
60
399
277
127
98
446
115
278
269
447
268
420
479
289
463
363
238
252
453
464
427
255
420
160
309
443
469
478
135
375
431
52
169
269
467
88
467
73
376
249
199
477
434
422
145
208
372
128
401
299
148
344
403
240
448
141
376
113
236
386
286
474
156
478
106
51
91
83
491
134
358
400
405
211
168
382
366
429
151
476
335
145
257
334
373
269
428
248
283
186
396
204
60
434
292
409
268
219
398
217
213
236
499
388
197
125
165
185
70
472
203
108
88
361
350
357
321
480
167
61
434
333
215
334
381
260
492
235
187
373
97
401
264
114
134
268
73
121
444
280
463
440
271
352
150
334
287
131
305
147
191
315
420
118
147
368
78
291
364
460
330
396
205
90
123
410
314
318
284
209
409
184
373
398
80
393
125
266
448
198
371
160
75
335
448
500
138
250
95
426
272
118
282
462
419
117
496
329
355
457
170
233
376
202
494
494
135
155
228
322
313
116
426
428
341
116
94
144
174
248
338
318
386
476
365
289
145
165
94
132
473
341
328
151
105
379
494
286
477
121
458
291
398
213
396
460
436
255
414
238
169
234
405
189
261
338
339
313
379
222
423
81
291
418
65
436
112
323
393
282
363
437
116
84
270
309
229
417
453
406
220
390
344
412
169
106
59
338
135
249
144
282
198
404
123
83
377
103
187
467
323
241
276
420
412
298
315
239
217
333
158
101
349
326
147
367
392
52
444
281
62
256
267
429
110
339
112
92
485
199
432
95
86
474
199
462
457
357
108
200
302
430
372
238
181
171
337
388
101
225
153
458
426
286
404
121
194
409
486
464
471
256
160
245
457
193
389
466
260
273
480
95
365
428
273
78
347
462
275
410
291
203
365
134
468
145
141
412
129
194
382
73
288
216
81
81
106
57
210
435
449
396
103
141
102
390
500
299
361
243
368
314
166
175
123
364
207
345
170
174
65
287
165
275
181
133
377
135
50
71
283
265
90
438
125
56
289
463
59
56
89
72
354
432
262
412
109
239
432
352
140
183
343
117
244
390
459
255
95
300
114
374
195
372
367
496
236
121
258
190
110
368
468
254
189
296
128
203
55
387
175
109
422
270
119
345
400
260
61
425
268
280
354
191
156
104
192
94
196
56
58
436
191
167
116
459
227
76
119
134
414
334
409
56
433
467
221
482
117
152
355
396
70
300
409
101
205
339
206
242
433
392
433
91
186
78
407
105
352
440
441
385
50
61
240
296
140
278
188
492
235
169
389
365
302
74
422
246
351
320
199
145
90
455
387
139
58
389
214
289
422
439
326
166
329
81
377
298
253
434
407
370
136
95
406
203
269
361
394
154
87
291
96
429
446
322
248
96
444
74
244
134
305
303
149
432
284
462
290
476
237
500
236
170
455
121
213
215
447
78
487
429
429
228
321
186
490
315
278
308
171
288
377
84
438
215
124
269
403
251
272
442
475
177
231
365
161
184
438
318
202
294
438
77
135
459
58
319
338
428
264
205
456
479
158
454
239
337
245
335
447
483
418
478
450
179
348
436
124
302
488
459
119
164
401
415
83
175
471
200
123
478
256
271
213
341
109
430
379
349
430
80
436
171
271
338
55
376
204
208
235
262
246
379
370
302
92
135
110
463
151
345
87
472
449
347
460
249
78
449
348
108
430
129
177
416
66
372
390
339
395
288
189
457
455
263
497
318
134
363
444
317
445
263
274
210
261
73
469
277
205
339
130
335
77
465
301
56
242
292
311
264
140
263
211
208
195
467
63
240
75
360
212
199
381
485
98
296
116
445
406
276
117
103
83
363
393
67
415
240
413
493
500
396
127
382
347
100
215
476
247
482
90
196
190
160
239
319
499
472
484
85
148
448
103
153
137
187
189
270
167
231
385
496
497
455
169
231
335
223
422
101
72
265
147
238
60
463
262
261
115
114
280
189
258
118
120
203
500
303
352
432
96
463
260
70
380
167
257
125
404
429
135
352
229
233
499
241
465
177
436
428
66
248
53
202
478
444
75
239
390
57
277
392
262
459
166
280
116
345
120
107
241
387
289
233
194
387
410
425
403
262
236
424
190
355
434
311
391
355
448
378
173
281
225
95
325
214
371
489
249
81
213
332
205
348
487
440
136
99
343
332
99
465
345
354
140
112
154
471
356
172
282
496
189
160
261
109
382
90
299
201
310
380
250
134
484
261
131
295
400
85
452
332
171
255
367
58
256
441
281
351
219
76
271
219
356
145
66
115
483
52
417
270
174
211
451
186
480
242
91
188
230
103
318
128
333
417
140
159
446
379
267
307
239
354
361
498
387
414
330
454
73
191
157
71
334
356
323
472
375
379
446
129
473
467
386
53
433
125
458
413
455
87
466
118
261
101
261
366
87
136
263
405
122
74
286
376
182
58
427
186
442
176
494
77
389
75
331
231
409
367
133
166
101
66
134
119
111
457
340
375
463
256
128
411
66
455
117
320
328
486
164
451
78
439
472
98
375
432
178
304
157
261
172
186
459
309
248
156
454
142
297
189
198
380
237
366
298
471
143
122
301
336
93
396
410
477
316
149
394
150
90
394
467
343
230
162
82
475
199
237
223
270
373
303
296
204
387
452
388
136
88
260
73
313
315
105
299
74
489
454
264
333
206
199
437
68
394
81
214
313
74
317
356
253
192
181
463
452
195
269
181
109
359
423
339
222
231
406
448
177
103
297
65
219
359
392
157
283
83
235
144
406
320
110
331
418
370
253
207
93
416
380
116
367
175
347
363
71
434
197
495
301
435
475
69
272
389
63
389
477
135
266
460
327
183
112
108
291
345
121
275
141
188
345
449
485
231
170
137
358
396
92
288
219
187
452
103
58
58
439
260
467
226
377
367
238
257
494
59
260
352
103
312
173
486
308
406
490
459
437
446
227
177
123
53
354
403
132
175
90
478
448
286
276
63
340
286
262
117
222
443
317
404
72
393
257
403
309
183
291
215
250
76
160
349
318
436
388
475
169
152
92
77
481
484
394
83
376
375
184
315
180
174
258
144
233
207
67
273
269
262
380
498
464
412
265
393
261
482
233
131
210
186
434
401
439
401
352
144
422
418
55
142
476
316
459
121
198
423
103
234
206
349
210
434
66
181
412
419
209
399
95
292
476
330
300
277
142
251
152
86
236
474
470
125
250
294
58
59
136
208
158
188
455
397
82
164
361
468
345
387
237
303
360
61
68
177
215
142
494
130
267
394
332
50
451
304
374
146
421
260
158
408
191
433
159
247
153
208
347
362
472
462
162
456
210
389
231
500
197
185
282
471
165
222
462
192
129
138
391
157
230
96
500
404
174
190
149
304
200
317
69
57
371
84
174
358
496
70
169
122
358
281
330
325
117
137
56
195
399
322
445
494
489
289
473
359
330
388
269
421
282
484
475
80
152
439
489
179
383
149
390
493
138
338
171
171
259
429
361
228
486
316
178
185
155
51
408
151
430
281
330
361
364
98
283
68
202
395
470
229
347
459
457
179
249
318
168
443
213
345
60
364
183
417
120
125
301
302
315
331
258
481
436
188
385
431
202
397
213
192
418
109
363
322
422
423
102
306
368
399
145
441
143
366
102
166
73
329
261
182
343
147
108
268
247
341
463
321
116
71
400
97
136
449
369
495
98
166
232
442
472
372
478
402
335
307
497
114
376
496
53
167
394
359
68
432
347
187
485
146
295
473
352
349
390
248
315
90
454
419
234
86
427
377
163
248
56
71
95
197
298
76
461
109
465
432
171
453
315
357
274
446
485
293
105
406
69
347
105
447
346
71
120
156
220
443
103
329
227
331
159
394
389
387
346
220
92
434
233
498
359
225
107
260
121
402
194
449
461
438
205
158
60
447
385
245
172
56
311
264
239
327
346
450
476
341
129
90
382
151
498
215
304
417
287
339
137
133
299
75
236
406
471
61
232
150
188
145
418
326
259
421
205
245
394
410
425
192
489
319
344
392
106
448
484
490
226
142
422
208
495
463
229
208
205
245
215
270
420
387
192
293
323
85
65
59
497
197
428
127
492
449
286
142
244
155
179
195
255
415
94
355
350
477
287
314
183
173
153
402
142
480
137
160
416
325
246
244
493
465
439
144
361
63
139
158
474
293
495
145
285
398
130
473
295
129
123
314
83
297
60
172
200
214
256
110
160
480
337
302
241
185
376
342
483
456
217
382
67
407
402
123
177
360
439
419
407
78
364
274
443
326
300
75
77
389
495
314
462
314
305
253
54
430
430
116
341
168
351
251
344
182
426
140
386
227
102
281
298
271
465
491
107
64
221
275
274
161
126
367
445
212
267
157
477
178
102
364
190
356
184
400
347
312
387
409
322
486
157
245
412
251
237
281
420
218
240
472
156
303
384
123
325
346
391
497
246
469
144
158
112
311
496
65
444
486
364
413
369
188
392
386
439
389
482
472
79
284
416
344
75
398
299
379
464
471
224
133
406
218
97
377
251
92
290
110
127
297
375
310
108
373
64
207
422
400
474
414
254
417
158
127
447
60
86
230
213
76
349
143
319
81
299
242
205
410
178
329
484
71
482
220
232
295
416
116
394
245
312
406
407
99
232
184
289
317
113
424
95
361
120
291
73
111
245
116
404
123
147
369
93
67
240
433
362
295
264
56
178
167
55
457
493
339
471
456
184
353
82
125
156
67
189
404
367
162
325
129
475
304
377
64
236
54
206
59
68
436
129
291
484
161
495
307
138
156
51
61
114
126
141
104
289
397
130
420
273
327
496
415
324
233
431
470
143
360
289
246
193
99
184
253
349
334
122
417
418
391
114
253
368
364
429
196
407
174
496
258
304
167
380
441
163
96
233
181
113
447
317
414
191
331
360
493
370
393
157
96
473
431
88
422
374
414
451
259
278
388
131
295
170
90
281
459
408
378
464
464
469
243
151
98
322
203
318
398
364
158
126
439
150
142
466
446
481
172
381
245
303
435
209
428
201
73
427
149
179
269
400
69
208
412
243
359
205
151
321
497
135
169
428
395
288
370
225
395
203
250
464
139
217
421
362
163
242
453
413
308
450
56
166
204
333
235
433
241
390
453
60
416
130
422
199
115
377
105
500
410
209
110
364
441
289
283
468
456
91
197
166
85
342
299
214
375
128
168
246
52
51
141
308
264
64
390
326
297
290
353
54
410
147
334
341
57
108
404
209
373
63
180
53
76
262
249
297
390
458
62
489
100
475
263
239
78
253
397
461
291
344
262
332
311
298
283
278
318
307
213
196
439
206
328
112
493
71
490
168
378
411
357
284
390
345
88
408
120
244
58
439
451
162
432
148
71
228
95
346
470
292
295
174
350
439
493
472
143
116
257
324
187
93
62
116
414
493
179
322
63
324
434
397
488
208
384
362
268
289
238
374
50
454
323
67
373
56
57
168
182
283
282
471
60
273
224
293
135
287
488
238
258
356
68
374
409
262
376
374
323
197
358
313
418
466
148
166
392
294
380
483
287
135
65
425
66
365
358
117
81
254
62
180
208
441
66
457
77
161
465
492
305
208
299
88
387
181
425
442
397
173
143
235
183
99
383
404
58
370
411
149
442
333
486
123
460
274
91
447
102
494
242
263
138
258
379
351
403
383
429
449
103
73
331
447
476
425
235
492
86
484
339
430
446
145
198
106
447
76
483
450
334
195
327
478
446
327
201
470
66
295
76
118
204
154
200
332
477
227
285
298
495
418
118
93
140
425
431
170
475
224
233
282
391
462
125
139
182
113
206
117
472
232
179
496
87
308
491
106
334
335
299
251
470
171
457
299
324
223
352
100
76
383
166
87
103
345
418
341
341
58
281
285
342
464
193
331
397
396
203
294
249
445
69
61
305
202
193
259
437
119
494
138
373
83
90
160
347
140
280
366
150
285
67
449
149
405
441
395
308
383
459
58
272
224
299
133
276
105
369
257
342
415
396
386
318
98
164
80
455
159
173
401
107
213
418
479
73
231
233
186
78
328
289
193
269
471
154
424
291
83
473
57
220
500
244
385
364
287
425
214
433
137
72
204
280
194
316
417
447
278
178
380
461
94
353
164
216
224
485
390
292
168
155
104
495
301
248
292
331
253
83
186
484
391
466
104
447
178
286
331
199
398
361
469
401
175
466
304
343
340
66
174
226
328
286
263
469
474
315
314
146
464
438
497
97
435
338
230
459
444
490
138
496
378
334
348
379
395
131
177
258
353
264
89
175
256
414
92
403
384
299
226
90
445
498
237
276
484
365
499
484
194
207
262
237
237
372
457
218
280
270
198
83
124
292
334
213
414
455
252
452
74
350
283
136
312
386
280
439
98
271
240
152
122
252
172
296
291
143
211
98
208
227
126
233
154
390
62
472
85
424
302
307
489
270
50
85
282
460
85
216
249
413
195
491
110
315
310
368
240
55
99
212
118
298
283
392
320
458
440
405
340
316
403
487
163
240
291
57
376
167
345
351
343
412
379
266
289
298
477
174
247
80
121
399
233
295
428
294
60
291
412
108
170
274
79
142
333
438
340
238
242
133
117
220
335
209
224
489
53
293
169
473
383
188
378
116
195
219
180
263
330
221
430
190
343
450
94
352
156
429
280
423
242
428
50
439
317
469
374
350
145
84
86
467
299
93
175
85
440
474
220
321
275
304
401
92
118
201
223
108
96
192
242
130
242
425
224
360
225
121
360
309
143
91
453
142
128
195
98
188
278
146
152
182
477
177
409
81
375
272
233
342
339
56
136
478
333
75
50
123
476
334
231
201
71
172
189
381
103
335
498
359
369
299
166
452
414
489
273
207
479
370
465
478
460
328
126
75
199
433
184
201
470
306
472
373
359
273
156
255
371
468
358
468
352
352
332
221
388
72
209
99
426
326
450
173
175
487
71
383
101
205
392
379
278
256
410
401
99
307
407
257
170
131
355
123
70
219
412
82
404
471
369
308
201
336
345
153
183
187
167
420
325
486
352
396
94
267
326
438
304
375
80
350
332
476
102
326
57
180
243
198
54
324
374
55
233
284
58
227
280
264
321
222
234
135
284
324
479
142
231
65
439
265
304
428
348
499
104
183
362
494
161
80
123
278
205
349
254
93
163
456
289
288
78
439
262
405
336
54
450
177
231
365
85
79
343
209
160
459
333
229
234
296
388
233
303
315
193
77
415
474
152
342
406
145
195
487
489
115
303
474
367
99
58
154
266
311
129
108
361
339
418
405
229
146
270
115
224
301
461
189
344
88
358
73
458
293
125
210
254
92
259
182
212
291
394
342
372
194
488
185
87
172
206
333
312
320
89
51
376
142
215
85
138
495
236
174
61
146
223
346
342
368
446
376
310
475
130
257
334
99
481
264
202
170
57
220
160
237
130
290
82
481
189
215
242
315
227
239
74
331
458
494
213
349
375
228
137
135
310
302
475
255
431
484
355
163
383
119
331
452
157
95
433
207
369
280
417
437
458
187
408
414
160
343
387
342
452
480
303
360
472
304
113
407
187
87
390
304
275
96
160
493
108
439
393
160
303
117
151
167
413
132
303
325
102
160
499
313
393
233
121
255
245
160
107
279
154
271
168
310
109
228
282
388
373
495
365
400
418
294
273
309
151
398
491
84
436
474
328
477
54
388
68
232
126
256
338
260
260
96
122
336
319
365
163
187
357
164
358
63
287
329
318
360
382
197
177
389
173
317
122
466
407
59
322
345
260
55
397
199
434
246
355
311
304
288
153
357
357
172
258
224
393
418
420
176
214
124
200
104
442
59
91
323
90
54
434
385
333
130
183
483
114
492
103
239
352
131
231
435
331
346
202
132
53
471
353
147
217
51
164
359
377
190
222
190
314
206
485
146
208
130
139
311
153
324
189
383
55
63
208
178
295
369
259
300
244
117
473
450
126
433
417
121
203
477
207
87
496
221
315
50
288
415
450
281
353
104
210
385
407
193
468
415
96
88
469
116
121
462
372
443
302
329
334
451
486
341
233
156
294
263
120
72
191
223
230
120
244
267
142
334
227
151
365
326
202
365
350
314
213
237
203
173
318
354
141
167
202
250
452
213
201
378
345
456
326
241
302
169
478
127
111
382
88
116
264
298
138
482
273
218
485
144
63
476
129
248
359
214
199
98
426
92
198
196
356
309
101
472
443
148
63
321
364
210
361
281
403
176
300
324
81
236
116
192
491
434
231
117
296
96
95
403
422
213
162
497
181
317
53
70
258
247
77
116
296
135
89
465
291
407
247
487
363
195
432
491
226
56
406
105
492
446
309
229
156
486
293
71
422
185
238
184
471
141
340
259
379
421
79
480
465
485
440
470
362
313
443
212
65
413
445
428
446
442
382
289
441
471
235
377
55
259
394
150
437
159
53
275
443
80
249
488
317
254
490
324
187
474
113
252
435
66
99
477
376
230
82
81
361
191
282
315
86
350
383
359
249
361
470
120
301
297
451
350
102
125
121
379
117
417
276
77
376
370
277
339
398
262
322
237
389
210
373
109
170
117
107
478
462
284
146
447
235
117
77
388
141
284
163
189
78
419
208
135
233
223
263
251
423
362
371
320
116
240
461
279
90
245
93
302
489
432
374
294
295
259
488
460
169
280
309
417
196
491
397
154
263
449
431
312
452
301
332
233
498
362
63
371
103
349
118
348
78
88
389
495
268
75
451
271
430
440
378
360
240
270
147
245
226
233
211
425
74
273
340
229
75
327
149
122
373
373
185
139
108
54
86
394
403
253
478
427
380
365
182
120
179
343
56
148
423
406
197
298
111
307
374
183
201
168
495
110
158
137
412
130
459
137
277
434
54
162
244
375
317
499
122
254
309
298
220
235
258
127
378
127
199
83
362
319
126
79
206
418
298
51
196
160
191
405
411
387
83
436
483
239
114
327
309
482
390
450
216
396
167
176
171
247
198
433
256
195
425
364
196
54
79
105
498
275
498
442
94
464
169
339
289
285
197
474
381
476
319
357
482
65
351
491
410
239
154
400
425
477
490
220
110
210
462
237
459
344
313
305
94
167
98
161
312
414
266
397
250
247
194
233
264
74
244
68
197
338
342
201
420
178
470
303
163
254
434
195
239
107
494
375
458
274
214
169
292
384
110
440
224
72
82
400
206
334
124
304
424
408
243
474
168
461
178
439
55
406
309
474
376
339
214
495
369
340
443
452
484
345
320
57
69
156
411
486
468
261
255
69
138
140
484
305
168
304
107
181
449
134
494
425
315
146
491
67
381
360
469
452
463
400
70
281
477
219
287
104
280
202
277
111
103
419
122
164
415
422
215
184
260
128
179
248
87
434
286
169
163
333
340
334
147
280
367
339
300
208
373
463
129
368
52
412
383
149
82
241
302
89
73
344
133
114
181
235
287
474
174
253
411
109
67
447
183
98
432
165
96
365
180
391
483
257
376
188
297
293
372
326
273
417
144
418
325
215
187
116
289
303
247
123
154
322
105
285
410
363
182
278
76
328
421
296
340
310
379
320
391
57
82
351
304
433
244
253
312
307
78
142
200
498
339
159
395
339
440
474
59
257
55
57
414
269
398
158
350
358
334
429
431
315
156
463
464
445
259
363
383
56
364
465
138
206
208
355
284
434
362
220
193
192
168
103
344
124
311
207
363
174
390
385
445
465
400
167
289
347
277
203
177
417
65
55
228
175
230
477
76
253
113
455
398
185
96
241
493
447
410
188
222
184
422
421
486
83
460
165
184
181
169
221
318
259
213
335
123
420
416
467
355
123
96
113
369
397
496
290
268
484
59
362
50
324
443
147
185
215
322
114
173
463
293
319
230
88
459
178
358
214
417
305
433
294
71
374
378
58
355
386
496
180
461
393
54
204
301
412
300
196
67
131
254
104
324
120
433
147
72
474
295
467
406
68
227
281
483
287
229
175
452
476
244
330
105
399
264
159
136
174
228
352
58
337
333
98
393
467
141
179
69
228
475
119
55
435
387
159
50
353
51
57
219
427
120
291
188
162
395
245
125
80
273
413
481
256
326
144
214
330
186
173
113
169
279
353
180
108
54
134
292
451
253
427
352
220
132
310
370
317
350
446
419
212
278
103
411
448
91
254
141
319
453
156
272
198
92
61
302
309
364
384
104
247
304
335
145
458
471
61
273
262
328
350
318
80
330
149
421
175
283
493
58
216
90
482
384
225
152
213
138
217
418
241
372
265
373
291
440
131
87
252
364
206
491
381
192
130
164
453
301
76
288
398
106
100
172
475
441
109
390
135
187
383
247
367
260
185
107
127
153
253
262
176
303
198
232
189
414
188
51
265
132
425
94
182
89
466
150
392
341
458
479
184
52
393
269
282
160
353
135
377
125
221
98
57
53
331
249
212
286
215
309
121
327
101
243
118
231
444
60
382
338
254
205
164
394
125
238
413
471
271
340
397
340
450
405
129
349
200
177
396
314
93
235
451
114
283
318
232
243
305
236
345
50
396
372
380
438
475
354
364
343
90
177
119
131
326
166
150
317
292
59
158
435
446
452
328
328
467
302
133
296
90
468
272
258
214
79
145
498
417
497
127
328
114
308
282
187
258
97
495
206
185
288
439
305
131
204
470
226
421
271
379
208
121
101
293
195
295
139
363
320
354
188
87
429
430
469
203
141
484
222
199
56
280
64
114
164
133
379
154
461
494
479
268
91
385
247
194
69
499
150
353
233
394
308
63
258
94
314
214
478
399
161
245
277
227
433
59
267
299
358
383
475
159
182
246
70
330
410
494
146
484
106
266
328
67
403
341
427
309
317
380
77
77
365
243
300
94
183
400
252
247
273
130
290
105
409
128
116
209
238
344
457
297
82
99
449
405
187
74
112
379
487
367
256
389
468
412
57
456
128
487
499
76
196
391
125
318
380
391
246
455
215
230
299
107
57
139
80
84
92
202
296
471
176
231
252
227
79
260
295
239
345
332
241
200
287
390
334
450
400
492
224
484
334
177
349
184
67
314
265
443
372
355
84
482
312
74
142
148
337
265
129
192
388
453
446
181
200
332
57
110
295
494
440
74
215
137
456
125
103
257
454
280
334
100
378
324
465
76
195
168
136
139
103
487
176
362
232
414
364
134
352
120
289
424
277
256
57
417
329
318
437
325
226
379
290
166
437
289
152
233
445
139
371
288
163
274
190
271
380
108
87
276
411
358
407
211
119
290
100
322
174
420
452
288
392
339
264
54
84
55
91
413
442
430
366
246
84
225
152
437
183
294
318
297
284
70
231
83
93
158
344
293
380
292
455
317
137
452
429
267
494
296
381
364
330
93
91
436
322
440
368
146
155
409
265
234
326
370
95
167
228
89
218
448
356
276
349
481
68
417
124
322
309
91
433
153
244
416
401
108
273
139
142
268
112
320
381
110
207
138
85
86
91
290
255
376
375
406
199
294
229
469
301
213
50
88
205
462
191
397
183
215
187
288
247
459
280
268
61
499
416
75
377
226
121
192
77
455
328
83
355
280
460
418
381
163
212
289
240
372
66
68
373
154
187
344
199
375
224
113
73
174
156
468
470
444
495
271
267
424
400
82
447
188
64
267
260
378
390
480
285
450
297
183
483
362
286
103
413
132
131
150
66
271
408
63
133
135
165
382
337
335
489
149
467
302
103
222
273
330
91
115
147
61
425
473
125
424
322
103
146
260
342
228
272
277
54
455
123
199
256
251
272
479
113
464
108
150
270
296
456
273
116
339
145
299
60
206
467
477
466
250
446
263
262
136
95
379
360
443
394
416
301
270
203
273
51
83
71
101
278
288
353
119
250
398
374
310
165
294
300
326
271
68
401
377
352
79
210
397
197
147
51
119
365
457
290
216
223
69
336
366
180
222
75
216
92
394
303
54
406
68
223
189
422
165
224
500
376
113
156
152
343
104
119
392
256
392
309
138
70
437
355
119
211
474
333
261
124
160
456
67
274
69
341
399
60
417
317
463
444
246
419
249
435
363
83
348
133
137
107
482
305
70
77
131
288
418
459
301
214
273
259
200
154
101
124
207
498
476
396
373
144
210
251
230
68
56
266
336
310
142
118
376
219
441
352
369
90
403
234
472
135
110
161
160
166
409
395
64
205
441
486
324
464
317
196
332
394
142
252
235
312
277
82
477
471
138
111
209
52
402
470
213
282
133
72
139
361
73
328
110
267
116
397
177
425
476
440
141
183
177
197
137
401
218
250
242
355
252
213
352
489
465
105
372
419
330
195
311
456
240
161
489
325
253
331
401
200
263
61
94
188
223
349
334
179
215
397
437
293
58
256
444
82
498
141
226
81
65
264
488
422
401
424
370
350
365
174
411
307
186
265
446
472
90
351
217
148
97
257
148
190
387
286
428
201
165
197
229
319
138
314
204
198
282
420
294
340
452
332
436
330
232
70
278
396
286
443
171
390
364
242
385
392
348
347
322
427
314
92
99
424
129
152
245
242
453
490
354
115
67
129
136
366
478
308
319
61
419
175
86
128
95
447
278
384
407
397
169
377
352
431
176
325
323
351
495
299
189
471
483
270
169
88
126
441
59
268
310
82
460
143
231
249
202
449
466
389
90
128
85
285
459
278
170
474
134
309
85
227
369
163
269
155
60
424
126
155
400
135
110
391
412
256
212
359
118
226
409
235
302
302
125
426
433
106
477
173
76
63
413
414
486
186
426
212
338
322
115
268
147
473
81
327
78
82
355
219
204
266
265
280
342
215
136
470
405
436
264
72
284
89
147
196
343
134
341
104
436
215
353
74
433
341
321
450
159
376
291
410
73
231
191
401
88
337
361
315
100
102
116
107
483
496
253
451
191
450
362
359
260
125
433
187
70
215
273
105
394
449
163
385
300
247
189
180
351
107
478
120
304
389
385
67
159
150
456
51
282
306
461
321
83
389
187
328
154
177
470
474
279
464
345
96
454
168
371
292
426
342
79
444
481
152
231
388
275
453
395
133
417
442
294
246
428
307
207
393
280
142
278
183
227
161
477
462
308
189
391
194
421
314
265
435
288
318
481
435
498
436
487
261
237
454
197
258
483
252
226
115
101
82
180
67
207
70
151
142
494
423
193
455
262
435
253
369
388
378
379
375
253
372
62
224
468
303
340
422
217
354
379
192
385
101
62
105
299
307
138
437
477
366
268
52
165
467
64
291
80
497
245
57
416
58
258
372
113
493
329
85
422
113
58
363
339
435
115
81
375
410
266
278
67
413
216
277
340
421
101
129
86
438
263
226
189
347
330
435
100
87
444
57
433
170
115
344
256
223
132
155
383
491
263
327
135
126
462
253
228
238
461
324
61
441
330
131
453
151
410
219
97
289
168
106
258
459
478
169
381
351
147
159
158
182
119
105
101
171
107
293
498
410
301
459
412
128
158
460
116
206
498
383
64
156
259
141
61
84
321
113
397
297
389
269
173
91
85
258
133
175
389
123
473
309
228
267
344
244
133
191
427
327
125
489
286
304
443
474
82
172
352
196
432
132
352
112
289
457
319
189
395
392
416
217
483
144
192
70
354
360
80
167
288
445
411
182
230
243
344
479
90
238
59
297
101
452
202
481
172
397
401
108
346
94
154
93
366
199
471
196
150
225
302
315
212
461
185
400
202
422
306
456
413
192
203
181
176
170
117
259
400
320
458
342
62
209
485
91
359
410
238
400
102
60
362
237
329
138
334
82
194
326
297
450
79
61
374
235
223
427
176
252
317
217
366
258
128
446
215
98
359
467
371
422
263
289
279
181
207
395
442
193
413
83
491
104
339
413
242
122
454
461
133
415
75
358
345
124
73
432
405
147
106
449
308
187
167
87
128
481
183
387
474
70
445
147
269
147
371
188
181
226
363
453
313
123
461
478
396
102
188
259
309
69
234
148
94
102
294
480
250
460
104
359
402
106
149
189
323
79
232
467
436
90
127
201
166
438
499
169
236
73
429
210
202
199
333
91
290
341
262
92
293
72
190
295
70
349
479
256
122
391
252
186
332
413
208
131
300
430
468
406
162
396
458
121
347
483
402
341
390
342
395
304
105
442
468
140
77
376
232
201
403
394
417
326
326
81
381
468
482
493
265
430
484
450
407
67
317
105
416
92
487
96
451
272
179
417
267
159
391
276
56
82
336
326
268
159
435
393
386
333
122
396
237
433
147
52
291
360
314
71
403
399
68
344
457
140
150
88
95
184
91
226
63
300
274
461
489
153
186
256
60
214
401
419
327
323
238
122
478
114
251
278
216
216
63
493
293
167
367
262
293
56
86
131
335
94
92
156
182
299
270
102
112
387
342
99
408
290
197
119
343
489
290
364
217
330
194
433
196
244
159
345
365
311
310
91
261
86
152
101
230
350
404
173
389
430
378
177
183
185
479
56
426
437
203
354
237
315
136
132
385
466
362
291
405
122
330
85
377
384
287
328
142
88
390
97
351
427
135
108
63
361
55
298
285
400
393
334
118
455
234
202
441
59
94
478
130
73
258
497
126
466
382
205
130
305
433
301
219
425
311
318
324
228
488
307
272
340
486
201
331
227
373
98
234
327
432
450
208
481
454
377
236
170
496
466
233
277
152
471
432
190
267
94
172
496
303
373
451
193
140
222
209
251
120
425
221
267
389
437
254
293
103
208
419
264
306
299
323
358
438
159
315
463
172
85
477
493
386
229
366
140
342
212
447
151
205
343
233
499
286
304
276
54
400
378
138
344
280
303
157
120
236
475
236
378
494
419
327
261
199
154
176
207
413
408
322
472
269
479
447
63
238
253
77
353
470
107
374
352
322
96
136
436
500
292
332
96
166
143
289
261
75
188
348
101
384
68
94
368
65
120
243
155
69
385
353
375
151
450
78
435
137
342
265
480
336
439
314
259
423
168
300
425
374
219
107
488
63
458
500
412
57
272
95
401
229
95
318
83
166
223
319
479
181
339
387
236
184
495
134
125
458
448
246
65
112
405
411
261
159
83
431
93
95
397
237
142
420
334
397
448
284
381
258
296
429
224
317
160
107
181
201
270
201
165
315
424
261
367
171
122
408
152
272
441
184
276
183
161
128
261
206
101
411
83
287
301
378
414
142
83
299
493
326
414
91
470
397
422
307
239
225
234
291
156
394
142
257
378
347
489
268
288
315
372
261
330
451
103
357
126
393
314
238
135
285
298
391
105
358
287
288
286
376
54
467
285
450
301
371
120
414
482
180
357
197
496
252
234
158
420
253
332
99
384
305
223
396
177
299
59
53
270
170
201
217
380
281
169
157
189
340
440
252
343
351
432
112
73
69
195
227
308
193
281
268
361
166
478
78
313
188
98
234
154
186
407
290
479
252
456
442
172
433
221
125
339
331
469
367
150
395
270
297
197
449
247
392
201
437
103
156
453
451
254
239
191
305
91
474
303
407
396
348
202
113
327
255
163
392
85
294
314
444
239
168
295
199
52
358
393
347
494
174
295
59
499
247
431
477
177
405
278
234
388
60
184
476
133
93
405
180
424
144
219
351
50
450
196
429
346
313
260
171
82
463
67
451
103
212
213
377
80
222
431
307
51
444
89
252
202
132
349
250
285
420
57
379
131
407
293
111
380
405
94
192
269
357
458
381
334
158
118
490
57
115
114
76
197
453
475
244
246
395
113
458
226
272
165
261
396
425
256
315
457
490
52
251
261
430
413
490
477
318
253
337
316
328
164
387
84
236
345
67
115
56
164
470
432
190
99
112
262
423
387
277
458
107
495
283
174
475
80
395
420
111
332
479
184
180
454
331
440
374
137
188
440
53
57
203
332
130
290
292
366
452
117
76
215
361
162
95
264
59
91
59
342
493
215
273
230
55
223
166
282
166
73
483
471
291
123
64
366
379
171
145
104
99
146
379
441
256
288
487
54
61
430
155
328
387
240
238
318
302
163
119
98
75
258
405
280
432
96
94
405
69
383
83
77
211
241
488
268
301
137
390
291
334
193
217
400
202
134
221
390
333
487
199
366
272
105
227
183
460
427
255
164
60
304
455
282
425
95
445
468
444
298
449
476
213
199
57
415
137
229
380
199
55
194
334
239
92
254
163
371
443
164
106
312
93
305
291
431
176
234
338
53
233
71
340
269
142
66
227
224
377
328
320
246
78
218
311
256
63
90
79
178
238
378
225
380
476
268
190
467
353
241
72
343
358
167
321
173
496
477
51
94
468
248
399
438
270
54
103
156
63
369
401
243
496
479
264
361
178
260
445
483
297
269
201
71
455
126
281
249
92
468
311
188
500
200
325
164
209
490
281
54
146
420
278
169
152
160
351
67
356
287
223
240
122
233
368
156
373
367
457
191
424
406
176
133
435
367
364
271
231
483
151
65
359
318
109
136
329
293
384
105
273
472
425
329
98
425
342
111
482
81
332
180
450
166
235
363
216
289
446
55
244
468
282
338
169
71
272
453
77
176
402
463
322
497
307
125
217
143
75
467
191
103
124
483
64
129
119
209
144
97
102
145
314
220
173
466
140
412
162
318
234
494
187
117
139
294
330
354
173
174
360
286
187
122
275
172
265
153
310
364
158
159
406
61
248
173
64
255
370
225
477
91
440
492
366
240
452
241
229
158
135
155
142
80
391
380
496
191
104
365
243
415
91
204
267
443
150
228
356
305
124
224
163
67
406
440
181
435
431
141
259
211
307
421
151
207
304
203
290
165
416
398
188
53
281
296
492
293
101
429
405
96
170
160
85
141
217
336
447
204
360
78
250
115
81
206
163
71
280
341
438
457
215
66
125
352
476
135
355
472
115
436
346
304
372
494
57
312
454
496
279
74
97
204
477
463
84
345
396
391
446
367
407
259
328
434
198
91
493
179
137
454
55
213
233
495
255
467
447
242
120
333
192
414
269
391
90
81
446
226
152
373
402
454
335
155
251
427
246
201
436
247
498
283
154
266
373
238
499
63
230
375
313
106
139
447
340
294
111
490
87
55
77
206
330
191
448
165
369
90
136
369
157
381
212
360
387
137
284
297
464
161
213
198
466
124
140
303
380
239
433
287
156
299
61
220
304
92
134
358
381
372
450
128
95
325
494
192
387
62
422
200
181
427
250
399
117
60
167
176
445
418
202
59
155
423
470
112
128
56
403
455
440
236
258
392
211
483
187
270
197
165
348
152
259
329
192
90
428
161
306
72
448
301
105
274
391
483
471
441
334
63
173
372
470
471
105
138
376
374
248
130
271
440
275
68
372
444
73
203
239
240
282
350
414
135
345
476
268
169
345
350
115
101
102
81
483
101
433
53
231
469
275
204
412
264
287
175
80
395
486
65
411
183
480
76
457
93
165
377
200
315
131
500
408
340
277
235
235
300
466
172
491
434
372
384
391
241
296
256
156
82
153
85
254
294
253
188
394
394
414
442
255
241
488
119
336
401
390
274
204
264
274
118
448
170
220
125
157
172
144
474
60
249
475
335
323
347
266
203
469
237
246
229
335
462
79
402
209
183
494
402
246
248
268
100
377
385
384
215
119
159
268
467
193
71
129
187
58
266
247
77
342
122
421
69
460
193
256
323
296
417
337
334
443
164
493
469
148
255
262
421
211
235
126
295
433
133
288
472
93
464
245
147
240
121
482
388
259
446
460
292
50
370
396
99
145
393
365
252
312
426
141
499
278
269
138
233
69
139
475
248
101
390
86
50
278
81
59
201
399
235
355
354
447
222
324
333
352
260
122
101
231
131
81
180
176
306
354
173
304
293
436
491
241
122
188
414
299
484
157
161
417
274
241
110
132
215
118
365
385
357
284
135
237
353
347
118
338
333
205
336
86
419
240
469
176
297
485
391
192
257
187
473
438
64
81
495
408
170
288
375
322
169
314
408
219
455
410
306
343
393
491
268
496
64
226
120
196
388
252
312
274
253
318
212
338
124
168
228
359
421
236
336
250
186
80
363
400
232
420
58
223
427
260
215
382
319
397
267
333
196
230
369
221
188
439
123
228
367
447
434
445
295
476
414
473
262
136
359
75
413
297
466
378
288
470
196
310
400
397
313
359
117
145
236
340
436
313
321
166
152
277
157
166
424
411
405
454
232
379
478
132
354
134
359
251
255
446
473
226
297
436
366
408
163
483
399
314
124
123
368
325
279
65
474
498
154
251
457
214
347
465
96
431
258
212
283
59
420
324
494
296
301
349
370
374
165
60
418
141
384
470
381
270
147
256
109
59
70
281
73
208
242
124
264
53
333
140
436
320
129
384
354
185
468
75
213
220
473
226
117
433
152
95
322
451
244
157
229
111
103
99
334
474
445
179
457
304
108
144
74
211
208
236
125
285
399
87
73
340
252
464
347
373
494
63
428
196
164
84
220
475
393
369
138
223
374
173
395
364
137
185
304
163
498
500
416
202
346
432
365
121
374
69
90
428
169
75
118
364
268
124
440
143
442
157
234
322
202
323
159
313
325
203
290
132
364
455
382
419
312
355
196
165
136
340
111
112
277
134
473
458
478
147
268
428
185
324
191
143
108
110
131
127
417
415
218
176
249
494
367
120
219
164
260
477
328
461
199
228
222
411
255
118
339
154
356
308
419
141
157
307
210
315
217
299
435
180
459
180
229
345
459
364
131
125
197
422
254
176
251
188
135
80
62
168
108
450
376
82
188
57
131
427
162
198
121
368
64
91
185
255
249
451
286
357
223
190
156
364
405
152
380
112
281
282
345
184
356
113
381
362
379
243
92
158
351
179
248
218
357
111
182
353
422
349
97
72
330
94
400
368
77
276
279
455
488
82
486
218
479
443
403
295
258
397
446
182
206
439
477
316
334
134
238
104
334
270
162
283
146
472
167
169
295
461
60
331
334
54
102
226
444
291
165
248
55
341
79
266
367
234
308
172
389
293
455
194
299
208
101
400
197
202
246
441
278
77
344
329
221
326
288
214
388
350
222
196
360
280
407
228
352
372
272
329
137
146
460
134
301
58
60
213
420
358
165
207
131
454
266
97
412
269
360
314
161
144
207
278
387
404
377
269
142
343
223
221
285
338
346
257
160
147
334
315
159
108
351
361
201
136
341
407
465
355
380
162
122
455
187
120
261
302
205
155
253
494
123
414
74
209
152
280
197
125
281
381
251
441
221
295
167
126
58
399
440
414
253
428
441
147
107
315
50
483
446
159
496
419
121
107
263
456
407
96
206
217
475
234
67
205
433
344
112
79
103
374
185
115
376
198
65
143
185
121
398
458
207
215
221
124
264
254
75
313
206
483
495
388
201
306
161
415
106
476
117
185
415
474
293
136
254
142
244
118
185
467
340
73
89
100
57
132
205
107
229
259
292
385
167
211
447
488
144
159
94
277
433
69
236
365
270
396
308
298
473
234
152
446
273
270
437
50
51
226
297
390
150
417
305
291
175
200
153
316
64
365
206
99
213
272
95
457
158
381
174
353
317
336
235
142
388
267
195
363
420
393
80
172
80
126
288
114
273
392
410
326
72
457
283
226
492
421
111
443
229
154
451
458
134
122
166
294
327
217
107
416
389
92
441
218
202
317
359
274
125
328
371
277
347
113
499
298
329
373
224
462
205
145
166
145
134
311
369
436
427
447
123
200
271
412
420
461
271
188
146
97
423
346
412
194
209
268
58
304
491
336
153
376
176
457
243
171
472
71
75
417
279
282
366
446
173
54
468
297
96
164
194
91
101
116
77
51
96
194
425
283
409
132
457
374
456
201
467
88
71
322
75
105
54
160
217
216
341
340
331
335
251
364
482
348
233
232
244
429
433
138
150
74
334
97
144
239
358
93
420
379
248
302
148
314
92
94
203
304
315
294
286
437
182
388
489
64
396
102
205
121
238
333
345
130
123
498
89
340
51
121
91
451
234
430
212
233
182
310
156
60
110
389
53
487
425
402
97
252
447
465
82
376
143
160
385
152
487
375
326
203
169
202
122
412
115
138
253
264
281
165
267
458
75
308
450
114
276
380
202
403
276
114
125
244
96
223
196
446
176
453
430
300
476
340
301
165
169
166
369
415
310
148
348
135
85
429
467
483
189
300
436
463
381
473
199
336
102
150
303
336
247
411
215
355
451
192
446
279
153
261
272
58
317
428
138
301
115
225
212
187
245
219
305
54
421
169
93
354
237
222
266
274
249
151
267
161
330
71
406
358
494
437
500
470
264
332
390
57
437
404
215
344
61
457
282
450
449
455
228
219
137
320
485
106
125
278
436
126
434
164
356
416
450
443
489
405
342
442
440
219
327
424
65
160
329
309
374
403
429
440
112
326
186
73
332
432
261
234
350
281
80
432
417
123
149
221
221
52
315
372
448
152
132
113
498
105
370
138
99
226
82
67
339
337
340
495
492
227
487
468
352
230
461
68
172
208
89
207
86
249
58
115
65
134
52
241
335
473
236
355
409
441
253
120
218
378
351
335
355
254
342
113
171
351
134
199
429
398
290
373
220
439
81
93
292
235
104
321
250
123
133
423
128
465
315
109
312
496
305
442
211
100
54
114
396
168
167
470
148
90
207
412
344
247
231
75
130
226
60
174
234
389
391
178
477
144
182
117
67
244
177
397
441
316
55
90
67
382
128
388
239
278
50
229
199
394
473
428
90
350
314
416
431
478
133
420
212
93
271
194
445
148
345
308
310
115
431
371
109
114
225
486
295
463
369
282
436
366
285
147
310
78
384
424
191
469
208
315
336
215
347
419
71
451
271
65
72
272
102
197
105
467
64
258
427
494
301
361
208
182
377
56
472
485
125
281
471
127
194
151
357
222
216
100
224
209
368
130
114
113
112
157
445
205
470
134
422
305
211
361
366
429
480
177
184
486
415
289
127
139
86
248
65
184
497
156
128
486
283
384
424
205
376
258
141
137
275
428
111
98
107
354
251
476
454
299
174
357
423
429
152
149
269
335
66
480
438
325
382
411
462
88
309
295
121
463
291
272
489
367
321
437
364
498
254
158
326
128
439
394
308
139
290
391
182
474
106
162
237
287
256
481
329
379
482
76
84
169
342
354
325
436
323
177
453
101
181
93
293
332
372
426
327
320
186
377
411
141
209
112
143
366
253
435
394
349
81
358
249
465
261
93
208
143
429
496
490
153
58
299
128
400
366
280
258
396
266
297
410
218
144
307
249
495
381
448
262
470
234
313
231
72
432
383
133
229
111
129
439
162
113
239
483
156
88
342
366
406
319
123
322
223
182
411
408
499
311
481
178
494
360
394
487
349
226
193
175
419
478
136
457
421
297
194
151
165
400
53
133
208
284
124
485
423
472
290
369
206
247
443
457
141
474
414
260
321
437
216
306
265
166
113
381
137
318
186
329
362
308
88
61
345
110
466
294
346
225
447
184
144
73
139
301
325
69
466
129
424
500
134
407
455
363
309
492
154
56
386
493
92
297
290
225
479
321
185
443
301
349
130
429
90
497
152
237
412
421
327
105
92
131
84
347
479
486
386
388
323
225
485
127
320
446
97
142
247
176
231
412
487
252
146
304
348
243
141
141
73
241
228
103
314
75
120
66
306
416
197
230
460
350
488
370
97
375
324
96
406
280
137
189
197
138
126
280
364
452
83
366
98
268
484
351
254
258
213
95
275
438
239
302
204
65
258
395
490
325
461
310
150
96
370
162
312
185
490
293
197
395
174
174
118
411
244
162
138
281
364
481
106
69
138
378
449
479
218
139
66
391
389
386
166
70
229
244
344
220
66
129
416
279
184
202
452
83
125
394
90
53
204
336
164
409
443
313
344
56
230
450
476
248
59
93
187
481
448
177
313
160
113
71
68
434
270
129
397
123
212
276
223
232
149
214
148
443
226
147
78
159
430
473
117
213
287
189
284
83
211
435
52
295
365
415
372
301
307
405
96
205
369
58
79
104
242
148
208
212
88
394
344
321
75
111
347
213
194
460
223
168
102
371
120
369
107
145
159
187
319
478
274
159
254
403
440
423
78
167
163
402
499
241
90
483
285
351
452
139
303
235
116
188
200
464
259
129
311
92
416
280
76
153
494
190
426
207
66
228
444
54
252
334
160
272
433
56
341
230
215
309
306
384
333
345
461
265
185
405
276
293
408
50
53
191
158
302
211
477
116
403
377
100
406
167
258
441
102
301
228
392
369
231
401
385
130
411
391
438
259
164
393
79
77
89
181
278
432
478
497
313
205
438
399
226
196
324
427
129
283
476
476
457
366
220
463
369
312
352
154
178
368
144
297
422
241
272
400
224
412
415
221
285
186
271
371
128
94
81
249
84
308
184
183
263
297
462
333
171
144
112
449
353
301
220
365
287
269
477
322
428
140
481
54
56
350
76
472
343
455
306
392
89
283
175
459
148
225
129
473
319
322
328
349
171
168
386
73
50
234
108
159
372
482
289
166
457
315
188
252
373
159
99
148
466
166
175
77
475
332
267
112
102
243
252
439
262
469
63
191
332
175
446
493
472
458
217
476
181
332
97
400
68
390
76
154
111
252
396
483
451
342
358
87
268
160
397
170
358
334
179
292
287
332
460
186
246
457
444
129
234
314
166
405
317
222
169
464
175
465
387
302
253
264
159
108
178
405
349
487
343
410
354
93
439
175
393
169
310
346
104
55
299
294
114
242
356
289
339
211
140
195
356
269
342
398
304
458
184
265
370
292
288
205
81
246
500
410
164
56
282
343
367
310
358
240
240
194
429
84
217
279
415
299
155
220
327
124
94
76
74
384
377
358
417
397
287
389
392
195
225
249
166
466
199
416
92
321
381
398
143
492
211
455
318
251
244
101
157
365
58
303
328
259
450
310
84
251
130
422
344
149
372
364
230
86
386
168
77
304
411
126
398
472
255
205
414
334
354
416
435
473
184
476
57
187
268
56
339
413
374
53
373
184
267
276
486
226
352
330
213
166
116
124
52
205
259
254
317
473
497
399
257
291
75
186
117
423
180
387
485
345
308
372
113
242
477
206
471
159
198
98
265
267
405
230
462
331
392
156
207
358
395
365
256
312
448
377
340
399
307
458
239
312
396
163
101
155
352
446
160
408
294
185
152
66
137
165
122
490
174
274
438
111
418
228
291
76
463
243
250
263
496
343
339
210
349
327
188
362
464
371
50
169
221
52
415
319
195
309
156
62
319
421
376
452
156
237
389
359
466
464
217
354
227
285
354
154
451
199
229
200
407
273
445
62
121
493
343
350
369
166
208
103
255
410
438
481
421
332
153
196
102
342
282
230
396
319
209
380
124
72
253
319
349
114
345
163
469
338
391
187
375
265
172
358
165
141
94
130
222
56
381
67
118
137
100
464
346
307
440
388
224
365
330
306
262
357
397
221
299
388
212
375
409
439
311
167
215
175
484
141
352
306
449
331
304
453
433
474
298
52
378
346
368
457
59
433
492
216
404
226
349
273
240
403
164
220
79
53
272
422
328
210
433
169
345
241
368
112
340
299
444
221
438
171
460
457
236
58
165
301
188
208
268
232
259
498
443
475
320
412
85
163
378
261
115
474
71
257
262
183
213
341
489
156
136
344
79
414
142
95
397
209
111
294
209
298
213
249
432
470
132
384
473
254
311
216
474
282
388
292
496
471
328
291
231
487
376
261
223
79
467
241
349
68
60
479
131
376
224
51
144
447
490
188
86
212
337
186
316
273
187
370
311
105
190
399
124
492
228
203
251
97
392
229
58
175
402
64
467
411
487
476
459
268
446
462
72
402
215
238
82
335
62
320
438
432
398
323
138
63
277
260
401
181
298
153
180
407
290
274
94
168
168
230
453
276
53
315
493
491
438
65
57
60
335
208
102
457
386
66
428
83
54
137
54
420
371
107
276
407
465
354
63
301
239
484
332
152
438
152
106
145
291
64
500
280
80
270
492
364
242
417
440
471
238
351
456
214
66
87
241
254
431
260
198
382
54
148
473
406
426
236
481
490
207
114
283
321
101
437
282
93
139
214
98
295
217
93
163
169
392
372
459
101
68
431
51
355
358
316
104
303
163
71
209
86
65
145
336
358
338
173
237
287
137
50
456
433
138
154
286
84
145
213
211
64
198
416
488
141
470
208
283
201
213
82
195
407
336
416
348
142
239
415
458
123
351
412
132
95
90
172
355
149
76
337
450
385
184
280
202
74
294
86
207
53
138
368
347
325
236
439
458
167
206
112
222
76
207
360
353
215
305
221
401
279
105
152
290
142
330
367
354
323
345
110
369
347
301
185
138
58
432
498
181
488
298
123
244
111
138
332
408
71
104
303
74
202
500
490
460
75
106
491
272
315
198
88
426
376
121
106
273
362
174
309
496
198
208
474
196
220
283
65
392
358
53
399
217
226
63
240
52
411
84
303
427
243
55
261
338
269
450
458
159
149
316
307
495
260
369
494
495
152
475
388
134
316
451
69
82
314
398
88
497
88
401
450
246
122
310
71
491
329
292
450
338
333
62
280
222
104
447
172
299
247
290
319
424
78
427
323
346
413
147
306
367
477
263
469
264
159
108
134
331
491
344
318
335
160
463
131
156
425
101
74
87
494
374
500
224
319
406
168
471
256
184
250
155
183
107
230
350
101
406
499
215
133
471
500
412
389
62
95
195
146
60
465
231
179
169
148
182
288
59
429
202
345
349
457
481
410
279
438
361
378
170
106
447
94
155
345
397
72
129
408
214
99
104
123
415
364
85
311
153
326
362
145
458
387
334
379
75
254
229
55
439
424
77
317
203
87
78
140
294
279
206
84
332
196
327
105
435
293
179
259
59
55
254
68
173
495
144
199
421
399
494
53
138
77
136
494
233
448
276
219
117
142
92
291
240
409
297
213
317
414
60
154
337
460
216
205
409
146
151
165
117
485
277
228
248
106
236
83
327
407
268
337
394
60
496
154
387
292
141
376
421
158
64
295
415
415
317
466
444
210
143
489
202
430
265
379
262
360
443
197
391
363
155
85
341
124
462
335
447
240
453
198
369
406
149
336
500
248
264
87
437
239
91
341
225
90
51
121
177
74
72
124
66
375
99
341
311
322
477
425
378
470
115
459
294
238
388
385
425
78
459
449
429
486
204
306
310
448
209
379
265
340
382
336
190
168
219
158
360
361
96
334
258
448
239
337
420
160
80
193
138
344
415
114
424
311
101
436
231
445
173
107
248
453
482
355
486
212
485
458
470
433
467
397
482
420
392
128
259
292
116
241
226
398
184
483
494
262
201
420
99
151
280
336
222
201
211
131
294
452
279
219
69
475
275
387
406
55
311
437
452
91
362
241
82
232
61
94
145
109
453
378
444
492
202
158
402
70
335
380
233
465
132
459
219
152
303
460
374
165
466
252
326
252
191
303
58
128
457
88
226
121
281
439
394
438
272
371
485
229
472
479
141
402
348
220
360
292
239
291
427
86
406
117
446
483
402
287
185
107
97
334
442
436
391
192
186
454
352
418
314
313
57
461
174
156
293
154
246
54
298
438
275
104
430
203
259
118
330
143
182
212
470
490
433
212
164
305
246
496
445
194
368
366
67
380
191
271
56
149
405
451
294
383
428
443
315
369
160
184
319
197
126
143
210
94
217
310
226
227
470
467
403
496
252
402
372
203
133
440
466
356
434
300
153
391
99
310
331
317
109
175
367
394
227
283
246
119
98
66
219
215
219
303
344
310
223
141
79
496
418
425
73
478
90
248
471
124
95
80
183
171
179
284
380
491
72
149
121
400
311
450
83
61
175
146
67
404
220
354
296
148
281
176
167
173
176
429
309
78
142
153
310
119
115
144
213
143
143
350
488
117
285
142
307
218
480
381
492
89
483
184
166
231
68
100
447
98
184
478
388
275
427
362
59
101
301
283
367
114
76
262
500
400
136
409
409
354
287
362
176
450
375
174
112
81
322
200
402
490
149
237
419
262
320
124
92
485
255
59
374
306
309
458
392
265
145
99
198
77
391
332
121
428
81
78
184
259
101
391
324
214
142
395
283
89
228
119
204
474
274
259
484
247
239
65
181
330
392
418
59
166
124
370
339
97
140
98
291
357
191
372
185
55
179
309
172
126
362
359
267
94
321
233
442
105
144
396
493
95
176
337
303
156
476
240
270
228
222
194
443
148
68
207
468
174
241
240
218
108
97
452
388
410
442
247
362
269
273
372
111
436
477
447
403
433
247
364
390
386
275
237
397
375
304
490
72
441
265
254
102
76
436
52
231
240
163
73
311
297
137
292
286
430
358
458
332
234
180
218
328
198
492
155
101
315
144
464
389
435
238
435
445
411
155
63
83
267
424
454
262
494
214
500
462
435
141
78
238
164
223
209
251
403
482
292
217
200
432
451
55
143
454
137
312
352
499
393
467
181
132
385
461
52
318
422
89
346
384
448
424
295
293
76
415
111
113
332
54
298
436
470
158
458
317
276
365
499
268
227
314
149
413
90
273
419
131
329
297
349
286
141
408
455
451
239
70
183
321
117
124
61
470
229
335
318
65
364
107
146
238
86
488
388
498
242
431
280
343
205
389
233
119
149
475
400
163
110
488
301
387
368
68
97
412
205
242
224
145
160
324
339
474
80
290
453
419
400
166
252
184
77
168
366
307
435
127
402
139
427
145
405
406
184
186
116
307
376
322
337
331
241
334
214
381
239
491
357
196
454
85
251
464
192
478
179
382
74
279
117
383
57
264
357
357
236
468
317
197
247
136
62
335
305
217
430
145
293
91
323
156
165
431
120
83
148
166
346
104
340
79
402
390
230
188
461
159
453
370
342
218
180
185
270
458
500
256
489
256
235
368
204
463
161
273
111
404
346
104
251
81
253
291
426
167
285
402
224
277
205
300
69
295
183
155
286
407
141
98
366
230
371
248
493
214
252
123
280
225
389
290
189
446
119
93
491
244
451
466
480
476
161
140
300
111
141
333
170
407
97
288
399
171
260
464
283
367
133
460
180
400
161
487
254
486
282
343
54
135
380
315
74
250
362
429
485
472
97
265
101
364
221
189
371
59
297
62
189
336
256
251
235
480
383
147
134
368
285
454
434
321
410
212
183
441
93
237
184
316
434
371
181
270
108
481
403
57
344
344
470
327
152
450
261
328
78
424
113
245
454
323
365
400
102
348
456
385
165
212
161
88
293
297
92
287
252
125
396
150
427
400
461
368
251
494
470
62
156
333
76
85
275
456
138
81
52
494
416
351
461
329
54
138
346
305
133
490
250
447
142
147
408
229
146
344
345
271
183
100
375
364
272
391
245
456
417
85
332
188
80
423
55
100
499
266
60
179
268
467
299
159
291
283
114
161
202
92
177
114
111
363
401
374
129
82
296
186
417
57
235
484
277
340
222
416
423
317
172
108
68
295
489
78
431
406
169
493
75
474
482
102
334
320
367
385
262
447
124
245
459
133
442
158
130
245
343
318
125
61
490
291
171
186
328
228
313
386
434
90
333
484
273
170
292
89
61
88
493
322
371
247
322
189
475
225
201
450
245
442
275
412
355
134
399
274
66
461
416
236
176
346
77
298
78
304
360
362
325
108
306
58
364
127
489
458
228
86
309
194
86
368
122
250
150
253
407
328
500
58
333
244
433
306
227
98
367
68
311
262
69
279
270
227
335
221
212
404
79
461
263
462
125
231
71
414
142
421
314
276
367
232
233
235
334
390
480
85
416
124
291
338
486
458
98
296
53
423
386
123
425
249
242
83
204
134
62
282
156
156
492
425
284
296
202
325
157
465
456
380
485
386
52
164
398
223
189
372
127
415
380
297
147
327
189
433
406
58
117
237
186
72
445
368
419
463
202
56
259
483
207
167
142
420
363
122
467
363
242
254
376
274
124
293
274
190
187
482
267
185
372
478
312
385
53
450
472
237
499
74
237
67
499
381
64
298
437
495
423
104
303
345
392
75
277
333
405
491
90
250
225
86
499
169
456
321
308
400
375
133
410
399
267
395
385
301
255
101
343
424
446
372
242
440
66
329
482
78
475
78
340
445
269
496
337
298
194
307
245
272
132
360
154
442
319
51
329
449
335
136
210
302
103
206
478
461
356
387
135
192
75
117
226
407
460
464
129
110
223
224
414
159
234
493
353
207
209
475
483
318
359
390
369
80
394
124
436
468
401
83
326
55
469
110
491
71
236
366
334
366
211
274
288
429
164
498
354
290
477
69
350
343
202
183
178
411
354
258
214
363
477
316
447
382
392
63
275
200
452
473
253
289
385
355
133
466
145
448
132
307
431
424
466
197
420
309
288
261
125
63
296
102
140
192
231
345
82
312
265
223
77
488
366
114
122
167
314
403
294
226
239
427
385
53
419
366
237
110
400
362
431
90
402
378
192
383
375
298
220
65
180
315
485
346
443
270
93
297
461
384
226
92
352
146
492
125
306
51
155
163
66
350
91
125
498
395
396
307
295
115
98
57
485
427
58
282
244
459
113
230
447
101
491
414
370
215
289
187
165
161
194
446
210
350
172
215
162
297
87
447
93
467
129
431
419
470
151
92
470
354
72
219
363
79
85
479
409
212
165
167
346
488
268
177
298
260
380
388
450
418
446
330
151
423
422
136
151
350
393
279
228
143
185
176
186
149
155
142
393
459
495
109
478
191
439
206
191
399
400
478
340
172
465
458
146
361
411
341
494
68
395
186
75
393
356
444
118
77
135
162
208
129
293
141
117
209
400
258
139
241
63
272
386
111
478
131
202
362
186
328
248
471
101
268
465
424
411
278
91
248
413
440
180
124
397
191
379
107
216
364
232
467
475
306
63
143
163
272
401
481
203
78
66
484
492
263
386
116
385
136
270
462
278
184
312
179
469
436
192
300
413
412
203
437
339
216
406
136
243
400
487
263
72
407
271
181
443
200
288
322
281
424
435
159
134
124
280
430
148
254
409
96
400
429
333
441
178
317
53
381
287
104
434
188
392
89
265
271
150
355
86
448
294
314
347
225
237
440
323
424
302
250
318
224
324
353
477
394
370
294
271
289
390
184
117
245
105
405
180
88
55
139
236
205
435
76
368
238
363
451
436
347
349
228
177
499
142
332
327
244
180
193
146
287
248
180
272
169
304
165
321
360
478
221
205
214
480
139
363
430
455
232
259
283
401
246
452
250
326
184
105
69
402
481
111
112
204
365
58
183
469
391
372
437
67
349
120
355
273
392
452
334
489
195
386
225
224
336
267
361
120
479
255
288
381
469
221
352
323
129
239
92
263
236
148
175
75
276
164
174
142
223
91
500
299
260
238
204
247
220
456
500
280
389
381
272
432
187
469
71
156
110
60
258
343
390
299
72
461
223
218
460
247
282
476
432
179
322
89
494
257
289
203
245
331
458
447
243
90
302
493
223
483
354
326
309
362
125
348
359
424
468
122
99
127
409
182
380
456
288
310
259
263
452
77
135
144
319
139
425
370
123
160
278
283
385
307
485
494
185
136
113
61
174
149
93
483
459
282
209
190
267
290
168
421
242
93
442
290
80
90
179
279
91
378
111
288
388
86
211
189
444
151
276
63
317
437
299
405
449
312
436
345
405
373
384
179
352
98
79
264
423
417
390
488
488
432
129
406
235
336
162
268
299
464
313
181
230
347
349
397
69
127
80
55
102
249
242
119
70
127
66
53
96
400
485
346
251
362
332
338
222
369
344
382
437
422
147
126
91
297
52
205
271
61
67
377
286
383
249
315
278
73
92
144
202
386
64
241
492
62
63
254
479
388
272
278
136
304
124
119
91
423
329
441
315
257
455
77
72
144
269
90
117
60
470
270
196
210
131
245
375
123
159
144
336
112
56
236
461
400
311
500
197
478
430
60
412
371
439
306
333
62
155
226
471
52
129
350
445
170
117
428
375
55
282
116
318
142
224
127
259
331
496
240
322
460
161
472
164
240
288
54
449
175
425
416
379
86
236
233
382
67
51
209
430
285
243
401
114
380
355
227
317
396
480
455
403
440
209
55
413
454
273
273
50
429
470
144
322
228
279
136
145
90
225
398
77
129
86
132
475
81
136
298
459
481
151
222
367
199
398
299
486
325
146
461
341
101
56
249
494
98
341
74
388
203
64
202
202
378
368
98
538
788
993
814
995
452
633
545
907
114
88
78
899
616
562
565
282
203
850
581
230
331
411
261
313
70
467
448
932
753
613
372
442
843
985
134
212
410
721
851
535
888
748
147
122
864
769
319
397
660
173
885
114
205
808
609
500
627
659
879
330
492
897
910
885
241
948
972
619
928
81
753
859
878
82
798
981
635
558
596
398
487
210
462
141
284
476
736
501
273
773
800
995
847
550
864
878
291
319
639
350
777
182
90
451
854
269
880
976
419
248
419
561
252
553
207
823
360
970
930
560
906
121
843
906
664
717
729
335
541
370
327
853
131
742
68
313
393
932
310
921
258
927
300
671
887
550
745
260
330
796
865
849
328
517
737
234
426
949
805
519
139
601
628
1000
351
885
121
404
401
906
165
565
238
283
299
585
442
680
472
384
735
683
737
930
819
555
701
279
683
116
897
307
734
413
416
187
673
158
876
192
210
918
264
136
81
783
482
321
753
505
497
468
834
721
685
830
891
454
506
498
941
368
930
940
228
982
441
363
208
136
559
293
758
612
534
450
794
327
565
254
692
213
861
451
412
635
802
332
896
926
461
773
783
435
515
848
540
926
679
383
319
302
795
996
785
790
833
234
586
819
130
220
870
788
929
515
596
1000
462
863
446
208
572
995
315
762
873
718
377
330
84
417
942
316
765
467
474
339
170
854
475
413
811
992
732
85
102
741
788
650
188
194
967
471
595
199
908
472
193
868
568
157
907
415
965
507
411
645
292
266
771
281
186
493
82
270
604
533
913
327
515
432
329
821
411
758
766
924
882
216
144
732
244
443
649
748
130
343
919
339
620
761
105
486
522
392
300
449
543
308
904
576
438
445
457
647
397
542
460
961
893
543
162
199
923
678
694
936
479
71
128
287
960
607
274
389
267
183
762
935
630
618
632
972
759
490
192
259
124
609
116
528
474
346
122
254
892
184
588
574
227
568
149
65
883
673
151
838
864
819
300
499
742
913
738
448
951
175
706
366
431
940
688
840
254
259
255
563
757
173
905
378
115
617
717
677
600
511
614
515
673
251
72
984
495
640
651
899
170
841
653
124
860
355
960
676
278
151
349
226
626
406
458
679
298
189
424
543
846
849
977
679
318
551
222
573
483
162
177
127
596
137
728
595
218
80
609
384
796
220
513
211
926
491
494
897
757
850
776
324
467
809
510
857
647
372
585
785
628
593
843
705
444
442
232
735
644
276
832
875
404
180
934
587
457
543
874
466
561
499
810
689
450
357
125
405
384
315
205
815
314
575
396
928
619
996
118
108
712
675
664
407
332
230
658
309
138
175
361
781
984
156
354
744
428
303
672
747
608
280
869
864
181
609
522
371
777
191
980
875
282
422
528
919
519
188
962
211
261
889
489
243
582
780
524
731
477
724
735
483
888
862
538
800
274
542
826
99
470
604
756
178
353
94
198
241
591
554
80
423
96
178
531
984
304
606
798
349
712
178
942
827
184
96
132
236
297
217
392
317
611
749
839
858
88
273
87
104
973
989
336
940
666
245
834
333
424
704
725
824
538
828
258
994
360
102
140
402
932
674
361
675
914
71
430
867
188
636
435
118
835
143
147
867
962
830
918
596
88
605
619
163
78
835
643
662
122
432
619
317
467
789
664
908
461
272
540
939
486
68
287
345
177
916
945
553
723
854
894
976
406
517
230
895
268
875
666
101
216
670
366
984
625
825
228
966
621
1000
606
536
274
610
617
153
877
525
236
80
961
557
261
121
385
659
748
928
839
761
207
70
705
710
823
294
753
171
726
869
824
936
293
795
886
720
393
708
624
444
619
558
546
921
507
155
87
70
94
745
442
65
309
654
858
287
326
99
839
882
304
601
906
318
729
118
876
290
749
820
107
77
750
596
553
718
312
163
499
672
993
838
760
177
744
432
380
698
666
621
355
488
116
920
139
954
101
372
478
163
630
185
496
112
344
988
431
487
306
74
267
425
769
703
75
470
180
121
820
618
83
368
710
677
706
719
911
791
174
475
365
608
313
817
397
963
409
767
661
376
352
196
923
509
292
612
431
446
948
827
919
931
577
643
935
215
620
405
876
404
120
484
996
123
696
589
290
315
565
742
134
624
774
758
329
281
966
879
748
176
641
260
772
596
812
868
656
846
476
691
290
208
567
519
429
591
934
63
741
524
287
824
964
279
923
635
556
945
872
311
776
586
626
607
837
198
473
275
296
567
361
214
649
844
717
263
781
109
558
432
66
128
491
474
967
80
124
206
880
304
276
568
735
697
936
891
314
335
135
139
391
417
501
770
813
338
406
545
464
470
168
79
882
883
909
471
107
759
541
333
757
662
863
917
998
816
514
461
325
662
730
579
211
269
940
255
335
224
103
81
969
316
645
167
408
243
88
857
355
628
446
391
912
756
878
977
491
841
952
189
916
289
459
997
822
119
628
543
830
877
491
761
129
695
438
80
189
622
773
691
961
482
809
937
958
530
181
374
855
579
943
421
515
199
356
658
150
131
259
605
540
103
385
900
118
350
981
994
259
807
751
161
757
367
252
203
246
614
220
795
573
810
785
125
740
236
888
990
160
715
66
592
414
330
977
99
266
412
140
341
94
930
426
684
538
694
483
602
541
396
826
693
766
566
538
706
442
198
752
139
173
916
469
103
980
807
136
540
67
754
884
587
588
287
278
860
628
341
500
587
585
557
754
803
744
746
381
742
233
76
70
937
964
414
970
75
858
908
533
201
521
928
393
728
161
381
509
830
562
65
761
857
599
250
979
567
950
87
103
703
627
896
584
82
428
760
215
315
660
959
698
894
509
477
426
726
958
362
110
461
581
582
122
118
281
879
118
868
736
187
326
299
175
996
273
96
488
366
151
269
974
363
423
511
473
975
580
721
759
297
410
249
873
774
484
691
770
795
172
907
629
876
280
448
316
533
486
485
706
436
907
942
314
981
531
969
454
422
421
710
460
206
878
618
721
89
791
750
752
279
296
553
988
350
559
460
148
558
764
178
592
853
101
351
474
499
210
679
308
686
359
664
889
697
140
684
328
451
989
707
652
136
1000
128
955
361
424
813
851
732
930
839
129
998
976
226
300
434
436
152
305
79
651
69
367
897
691
344
181
907
739
451
259
984
501
769
260
880
937
986
730
77
995
691
887
768
679
142
62
726
808
338
312
709
126
296
927
894
476
956
899
435
964
977
201
551
694
748
396
742
511
386
849
77
720
531
277
349
801
875
849
560
936
350
140
857
60
617
603
800
207
849
129
614
889
259
326
112
939
795
857
511
75
397
792
752
407
198
448
558
620
173
84
546
204
205
448
66
405
864
410
646
903
743
326
164
568
476
554
831
266
905
932
500
454
149
692
188
165
852
224
736
685
853
618
419
981
214
793
511
977
265
673
161
674
979
745
472
720
701
131
768
236
812
758
958
65
726
546
94
468
80
295
510
115
134
977
576
732
360
260
975
319
278
571
465
306
504
510
445
674
171
198
630
929
683
315
527
267
307
71
367
232
611
143
546
259
173
533
66
725
624
625
68
812
914
864
998
707
771
740
688
710
433
310
265
491
596
155
448
257
361
999
810
543
924
999
95
221
852
639
801
271
926
455
495
937
416
784
703
982
469
821
370
501
420
295
693
191
630
954
445
742
326
699
122
568
484
358
314
191
479
349
901
160
223
975
846
617
574
108
688
985
865
782
284
817
166
79
933
901
63
572
290
283
731
824
123
661
896
86
227
496
893
346
81
511
839
950
211
915
810
313
330
562
824
320
949
872
315
368
373
661
473
659
502
883
91
267
823
87
844
296
685
287
666
93
942
476
368
507
694
94
85
788
736
373
854
888
781
729
830
253
344
517
926
576
593
593
749
805
172
676
366
246
516
294
507
225
458
481
538
573
950
729
544
522
524
820
189
444
221
711
577
272
955
221
293
106
717
724
961
292
840
79
597
789
913
273
214
94
557
704
530
640
623
326
889
464
300
974
619
710
362
878
791
369
361
169
800
603
694
689
746
167
250
146
890
165
764
146
162
732
241
535
114
926
720
758
474
994
193
516
741
803
404
460
600
616
69
508
762
547
885
581
253
398
229
380
673
256
540
94
154
637
999
683
610
922
124
512
847
360
212
610
68
626
637
813
681
369
187
388
407
195
828
343
492
337
723
570
294
129
977
454
574
119
576
811
573
948
173
694
889
409
843
627
203
751
694
164
556
464
739
190
740
90
606
815
358
680
63
777
178
458
718
701
720
947
429
345
623
281
338
442
808
412
527
281
448
819
259
960
823
392
872
844
689
934
711
411
303
893
252
693
575
86
431
62
563
813
890
545
771
241
398
775
135
118
546
109
147
179
273
910
411
946
820
778
638
495
811
349
777
969
194
137
461
291
288
967
883
787
799
386
850
853
807
416
453
222
464
468
481
314
772
564
94
469
383
448
730
592
67
567
866
194
436
655
94
296
838
413
797
325
553
311
323
528
272
130
990
717
87
468
834
217
409
274
517
178
314
895
985
992
524
100
867
972
563
567
636
559
135
888
783
665
219
432
406
656
84
791
529
119
739
647
84
887
659
289
545
534
457
646
709
948
862
430
765
725
720
447
543
727
441
962
893
315
773
219
218
497
628
250
734
902
105
242
226
679
584
744
574
934
223
621
857
869
642
87
796
208
872
263
123
735
655
536
895
670
215
409
305
899
807
349
503
491
982
552
98
245
339
253
739
872
870
531
221
255
416
669
816
408
121
373
722
505
453
500
268
550
255
161
472
336
327
678
936
800
741
302
218
271
449
205
609
573
933
824
281
163
554
700
185
524
268
239
636
699
454
829
788
504
667
371
227
279
386
250
383
976
573
598
676
462
837
675
129
129
946
969
862
538
773
874
532
247
427
347
149
484
966
521
656
267
658
255
614
153
265
430
196
713
207
787
256
403
348
996
926
63
440
276
563
282
509
255
486
716
103
427
440
701
437
992
459
851
1000
381
855
687
945
574
921
999
419
215
436
355
265
863
964
225
613
396
781
605
91
896
137
720
949
309
612
450
280
711
120
141
951
283
893
440
561
904
775
731
564
510
403
129
620
601
233
434
613
288
216
364
972
485
569
553
113
186
76
416
63
324
375
565
325
222
570
208
187
124
603
273
506
394
222
801
520
663
346
99
817
938
861
247
313
783
756
260
789
703
155
784
482
114
313
731
630
712
656
163
276
329
835
336
593
571
436
90
857
785
688
439
161
762
104
347
955
765
639
803
329
233
655
725
691
958
553
960
876
413
188
732
301
82
358
571
744
896
67
463
341
684
776
145
557
912
215
985
520
648
621
237
888
885
200
991
656
578
335
105
710
163
647
508
335
636
707
190
410
354
554
787
624
477
336
397
981
702
925
975
645
496
724
683
454
623
923
426
462
531
508
945
965
688
363
99
322
638
161
951
160
660
749
613
648
174
765
574
669
519
660
651
525
355
421
790
361
259
964
931
83
391
752
598
268
984
120
102
293
363
770
995
546
793
919
585
728
508
461
929
135
316
568
500
744
750
607
370
828
948
67
416
665
370
715
683
462
875
334
115
470
882
614
551
211
898
289
951
401
996
170
572
889
94
985
223
348
315
631
405
311
612
850
583
427
336
400
318
626
380
392
174
179
765
124
300
270
203
239
196
338
688
808
480
157
539
678
579
884
906
597
685
818
653
411
504
300
986
740
132
707
265
487
508
762
777
342
700
807
614
454
198
395
732
136
179
188
883
784
876
939
328
318
976
727
267
940
83
278
939
74
720
900
269
427
664
875
314
675
878
975
206
569
146
211
136
246
107
624
607
920
272
965
306
257
722
911
862
539
545
949
721
534
879
635
515
695
677
959
557
943
982
768
908
462
469
863
101
313
967
348
996
860
338
503
322
315
299
594
550
109
233
297
409
572
633
586
470
174
670
617
441
263
489
478
418
555
482
338
397
816
786
151
640
747
730
799
256
174
886
548
232
556
195
895
978
837
529
739
286
247
326
546
722
273
765
155
492
378
171
171
278
760
308
619
793
704
339
297
285
664
996
907
995
120
119
528
813
394
691
947
181
735
524
520
603
675
980
618
367
645
85
847
408
930
434
132
87
869
111
87
279
323
779
851
502
136
892
130
682
960
631
428
592
384
857
789
127
440
305
403
939
760
223
553
944
441
317
694
910
889
557
985
985
977
196
799
216
592
324
876
177
374
920
768
712
831
908
562
836
540
179
256
146
693
609
94
810
755
617
657
414
484
711
533
962
210
373
944
762
102
626
330
514
910
503
740
244
663
119
220
128
151
271
528
678
565
299
728
235
620
511
67
318
997
296
441
982
934
592
424
500
289
747
441
213
833
712
91
227
195
779
867
322
146
219
366
594
870
714
80
784
782
949
602
587
522
999
754
143
495
880
595
111
459
698
224
996
374
716
729
115
855
820
500
296
618
899
723
188
351
922
377
909
644
226
936
99
410
87
815
197
88
601
316
812
212
388
676
277
626
582
314
281
568
162
740
741
538
969
216
575
821
71
910
751
926
137
170
968
541
782
645
307
700
409
940
403
341
316
551
299
553
507
118
450
220
197
745
693
853
445
635
74
553
673
825
881
136
794
355
495
143
695
148
535
439
728
772
412
528
133
670
553
752
860
143
939
277
933
836
472
341
373
647
114
750
251
747
730
291
624
437
986
318
571
629
860
330
662
92
450
336
759
736
752
324
228
565
939
985
971
856
799
191
961
766
747
483
951
752
210
563
353
173
171
627
646
822
218
471
431
112
902
561
125
143
738
905
376
257
313
796
236
228
581
346
477
700
403
238
701
703
865
555
507
827
450
175
724
144
139
602
134
94
589
260
126
426
539
895
148
184
915
372
479
211
738
835
247
583
140
224
731
728
880
171
827
560
63
705
645
250
981
460
522
302
420
986
698
315
118
935
783
761
158
791
93
953
675
593
530
250
215
774
582
326
407
405
940
358
800
952
592
724
362
236
220
486
813
996
645
277
915
175
795
939
705
637
576
986
375
760
259
697
325
934
849
100
985
761
141
741
197
428
820
113
382
637
639
422
815
633
269
95
397
915
287
931
796
555
921
941
105
688
223
173
682
538
541
567
932
286
540
765
877
895
834
847
704
656
955
333
622
861
331
641
263
953
385
164
658
529
938
709
147
818
640
933
843
313
545
838
298
517
196
703
631
904
586
705
891
807
953
768
724
653
836
421
677
607
82
580
386
125
199
747
562
283
362
783
952
790
268
284
212
165
939
347
187
960
960
709
681
761
274
584
702
373
777
62
176
722
823
391
60
772
822
388
521
952
635
643
608
751
546
951
982
470
499
282
649
719
335
229
985
979
548
931
751
703
250
364
715
131
60
950
739
199
775
659
105
95
272
377
819
325
208
383
723
315
785
463
372
541
493
866
787
412
851
907
125
553
690
247
112
438
597
579
745
875
214
165
740
62
397
613
993
825
361
121
451
698
849
632
324
573
121
195
910
530
683
323
688
714
965
176
119
499
136
768
542
991
114
693
541
129
534
162
858
436
865
967
71
685
524
394
87
463
99
661
989
814
403
459
252
601
393
601
189
454
568
935
331
66
172
115
585
954
184
710
518
335
137
755
77
681
772
711
475
346
437
261
475
324
538
381
728
472
623
430
847
741
710
578
831
575
538
506
934
339
503
581
776
93
879
709
894
101
176
702
566
867
886
787
86
908
284
213
718
119
445
865
889
197
436
915
585
679
123
307
897
396
561
164
602
319
286
759
243
692
613
670
500
1000
437
92
502
692
136
244
359
855
829
501
315
197
121
921
680
312
706
495
635
924
383
965
653
903
317
221
212
836
878
677
529
638
604
517
316
514
315
179
360
330
175
141
405
160
271
433
249
656
600
925
802
821
384
196
366
141
418
423
265
654
974
421
191
189
787
575
146
831
573
85
889
255
832
459
775
975
809
264
327
537
629
203
484
916
371
225
681
240
320
709
357
619
835
646
695
820
986
448
471
788
172
102
208
532
889
279
271
595
675
975
83
305
286
697
882
413
459
679
622
274
983
487
588
475
746
804
146
66
812
330
152
777
735
773
131
441
527
631
523
293
483
862
682
971
339
349
149
493
844
870
346
929
75
770
927
829
243
750
935
511
316
834
143
84
392
475
592
777
182
853
917
797
361
210
105
329
780
119
883
484
813
687
657
776
721
672
103
878
902
650
867
926
333
439
465
761
983
102
312
339
968
971
910
554
600
413
824
762
854
105
819
684
719
848
290
146
651
915
936
924
187
490
100
472
688
95
674
937
852
104
980
686
476
589
576
561
360
259
338
137
235
750
565
172
725
145
269
317
276
985
855
924
456
418
691
566
238
579
563
696
902
276
177
123
739
804
770
191
590
672
667
965
201
941
76
663
392
729
902
697
77
724
934
699
568
654
116
333
235
263
508
730
890
900
151
692
987
732
968
907
522
697
790
713
98
380
991
566
206
624
978
412
901
296
602
462
197
653
684
347
844
885
555
917
207
926
979
974
417
371
610
282
688
164
731
166
513
437
381
690
102
586
120
179
699
261
939
860
208
105
291
559
459
419
797
181
140
348
498
257
465
683
220
892
994
214
525
512
257
618
348
425
772
168
604
536
786
68
159
958
904
706
934
543
817
799
917
177
356
197
279
448
285
992
135
602
454
315
990
769
935
231
891
719
521
754
770
498
198
898
843
397
965
656
419
395
150
885
394
815
999
197
98
175
944
198
699
712
506
998
77
816
570
130
491
304
566
192
765
937
911
460
529
767
743
409
266
658
880
663
773
300
922
401
226
729
68
812
953
659
743
238
497
487
881
389
952
469
406
905
727
966
559
877
975
232
165
505
830
693
694
263
122
729
780
654
707
293
583
871
909
258
106
450
355
601
355
504
669
235
499
738
478
535
373
811
724
720
489
771
419
179
521
235
904
323
327
876
192
607
939
113
816
492
536
176
737
654
984
261
176
965
626
689
354
710
513
704
932
231
924
371
289
841
173
259
217
325
537
390
344
391
966
807
427
972
147
320
237
418
518
578
596
673
160
645
957
941
660
322
876
300
251
633
721
447
221
659
838
277
891
637
389
573
574
306
718
766
350
919
515
324
613
344
514
311
976
963
802
222
648
984
191
419
278
937
359
405
827
197
881
114
903
536
930
889
816
192
753
357
729
119
233
258
754
917
723
833
948
869
272
623
298
430
363
973
738
337
102
525
229
168
560
315
178
759
899
77
329
395
719
361
465
183
208
260
768
74
228
73
655
988
348
242
473
658
78
311
730
951
495
292
142
195
642
383
942
540
557
894
614
575
284
396
261
759
656
120
167
584
701
986
663
226
666
81
750
853
797
439
691
735
720
110
107
434
897
934
234
169
491
242
387
655
872
899
231
697
237
640
185
512
951
560
477
770
991
962
320
832
710
763
255
207
561
122
485
64
990
424
657
782
121
494
267
904
315
714
718
832
155
202
307
788
71
214
856
984
119
868
682
414
750
565
614
259
170
299
386
88
841
626
426
530
78
90
457
639
479
310
601
295
397
535
852
658
888
882
103
899
854
664
392
381
181
803
617
391
855
328
668
694
100
507
85
376
777
674
537
838
60
809
195
702
558
200
879
119
816
166
392
948
176
742
437
163
313
650
96
906
430
475
267
224
437
97
737
687
598
708
840
670
587
497
972
699
748
346
963
755
795
634
890
688
946
504
107
712
74
852
235
849
715
905
883
399
275
832
637
236
490
526
536
685
756
955
999
260
196
866
608
256
835
827
984
552
987
301
755
765
709
774
827
62
676
530
102
478
954
609
808
787
260
903
221
79
373
849
158
178
338
536
274
305
250
483
889
662
167
270
988
210
176
538
142
225
67
727
981
726
306
807
167
757
68
863
377
910
399
249
111
839
701
960
885
813
641
989
573
635
315
353
323
79
494
473
456
557
181
812
412
496
352
658
652
938
589
831
110
746
288
879
591
517
126
759
721
336
284
253
881
448
271
974
492
225
436
396
550
588
455
503
618
328
247
188
563
67
314
763
568
372
687
781
835
963
252
606
687
618
971
850
786
234
419
148
880
373
436
520
939
780
702
532
692
819
899
983
715
601
972
875
814
942
764
292
541
362
940
310
897
134
659
912
557
157
624
567
951
108
555
725
783
924
981
833
836
955
522
957
544
409
501
562
560
838
287
976
640
249
830
131
661
576
672
388
65
633
238
506
662
357
231
733
244
330
544
506
905
606
86
222
762
900
581
950
481
807
348
115
738
546
109
148
368
147
272
842
691
269
417
312
778
477
393
989
902
270
337
491
287
863
975
212
154
494
194
706
920
611
498
967
824
478
224
672
304
825
97
911
648
565
602
477
140
408
705
422
280
433
354
725
385
923
501
121
619
645
871
949
484
300
277
816
633
633
280
751
898
442
944
329
776
437
372
826
568
285
177
329
662
611
832
726
271
433
265
648
266
324
515
338
737
206
577
804
447
262
941
463
777
945
666
485
358
810
861
114
721
757
178
589
822
256
989
792
843
708
558
331
487
881
509
340
984
509
312
483
83
714
362
162
540
75
954
593
110
177
263
470
913
877
301
818
189
887
146
121
581
152
943
512
613
637
74
562
502
865
692
91
840
767
112
274
119
598
70
61
602
576
694
651
149
780
929
227
542
430
938
387
957
210
298
312
991
137
834
546
630
991
529
294
992
216
733
673
165
393
159
673
655
465
361
910
387
258
670
780
773
589
237
653
506
97
610
986
167
343
877
87
109
814
650
986
417
852
386
335
1000
215
828
164
638
303
714
624
705
842
673
641
77
713
984
757
790
935
886
81
629
226
896
153
626
481
395
779
986
691
538
517
745
173
421
756
140
677
227
425
807
558
166
684
102
683
558
654
922
507
894
281
952
210
255
986
845
333
372
849
78
362
419
777
958
429
786
404
236
662
527
937
60
217
996
755
99
450
468
831
178
460
116
463
773
395
350
401
193
775
223
743
639
125
961
326
805
95
558
321
815
453
930
677
95
386
215
892
953
125
854
533
234
380
466
101
689
460
847
870
423
99
186
914
408
102
371
221
911
148
292
447
222
814
526
887
461
609
449
536
525
416
653
916
995
378
842
374
944
915
434
569
786
179
653
644
582
740
339
509
492
627
107
615
866
420
673
435
668
252
614
983
350
760
165
710
778
371
172
403
742
686
316
165
278
821
593
583
330
156
211
682
674
827
420
459
865
245
201
769
899
71
657
496
739
970
916
660
784
333
982
254
864
779
597
454
596
361
425
156
796
291
491
989
508
991
668
367
987
299
574
445
393
243
109
86
698
683
945
440
140
286
712
350
732
117
956
676
473
908
783
100
917
932
277
631
197
815
528
83
67
905
628
512
579
295
862
639
62
93
680
427
248
990
776
715
854
649
124
186
749
862
330
732
502
819
454
552
691
722
480
760
80
698
647
996
476
280
624
991
291
368
117
150
103
300
698
649
472
761
447
953
381
210
952
706
192
552
910
680
126
848
496
99
982
778
567
734
175
332
309
835
866
527
875
778
145
131
672
634
403
503
348
290
583
626
503
584
193
308
620
540
159
355
581
892
570
506
824
283
805
622
290
945
917
907
411
607
959
418
101
411
974
67
756
491
306
109
661
124
258
535
65
669
449
668
334
380
608
989
342
169
95
403
876
494
414
280
615
948
933
318
627
207
302
650
182
530
624
266
697
342
648
988
714
774
371
320
638
613
844
707
667
786
790
801
944
336
646
255
763
225
725
250
154
413
106
576
852
961
832
203
763
490
159
632
580
874
218
428
359
271
866
696
824
467
304
839
672
604
300
453
175
546
500
844
363
334
728
710
282
731
96
100
540
397
573
913
402
940
205
733
593
373
523
559
405
328
839
693
758
77
881
503
754
683
580
651
563
653
342
88
696
641
689
160
73
932
673
709
822
100
299
147
430
76
232
437
797
298
124
87
147
753
852
283
485
93
950
515
750
273
966
970
813
502
213
806
860
844
452
732
141
927
307
183
311
671
570
933
145
533
309
839
631
756
767
302
500
147
365
118
135
157
170
261
379
638
968
880
126
316
180
841
548
795
256
298
401
930
156
206
517
550
708
98
594
173
796
405
625
290
946
780
695
647
347
422
91
283
991
915
87
297
464
980
965
794
288
541
366
213
529
315
542
256
635
655
987
757
904
214
757
774
254
133
326
467
516
755
285
659
186
387
277
293
594
652
713
765
262
334
311
728
463
195
747
409
568
473
777
530
441
886
595
75
426
629
633
506
134
615
127
771
365
743
374
353
218
305
739
777
572
435
397
336
961
518
663
745
223
269
788
964
877
826
303
909
282
223
953
965
414
864
853
881
756
870
188
530
836
164
233
776
428
70
597
899
215
340
164
612
645
486
233
843
319
500
391
130
426
458
574
957
190
323
491
122
614
322
234
317
108
913
894
892
460
656
553
901
310
985
673
273
872
793
763
191
267
700
326
78
795
974
453
977
144
123
961
271
128
886
273
403
258
845
325
480
933
919
942
373
680
890
160
985
325
413
493
196
158
920
823
549
215
560
64
405
743
174
535
963
706
680
521
758
82
904
419
548
771
186
171
168
457
482
339
165
608
870
575
582
756
684
909
750
780
302
137
133
120
724
338
167
119
284
691
227
945
925
798
278
586
411
450
416
579
134
701
353
914
652
969
154
413
589
777
208
119
128
278
348
111
338
757
640
156
228
760
744
598
80
119
214
628
385
387
291
89
524
94
385
798
150
308
465
768
696
878
162
555
973
731
911
608
460
554
79
469
522
177
147
210
122
382
546
973
944
622
75
783
873
231
334
674
189
506
266
939
191
621
382
889
552
644
980
786
262
349
405
765
346
790
853
196
525
569
249
302
958
227
304
495
90
702
321
729
329
924
307
206
222
81
162
181
396
63
964
474
406
848
338
521
197
936
223
732
419
159
381
403
675
73
839
999
842
335
592
203
996
475
783
933
204
969
627
370
156
698
336
437
151
501
498
694
432
678
482
544
294
338
152
221
400
186
677
725
797
408
464
511
978
547
702
315
164
735
130
867
241
89
359
315
215
539
691
910
874
586
171
173
101
799
386
302
270
312
965
119
504
881
598
805
672
469
74
655
96
380
397
368
808
555
898
889
587
687
845
977
303
88
72
998
202
78
611
529
883
646
391
264
313
831
249
558
740
959
254
329
220
269
141
549
881
746
278
763
350
328
307
981
91
99
509
528
432
134
334
944
256
970
505
102
634
809
350
913
467
712
457
678
929
432
162
933
786
502
806
303
287
883
821
241
162
864
382
813
626
185
332
914
253
412
516
336
999
941
575
491
274
562
598
265
644
952
531
342
870
87
343
419
650
871
728
681
828
483
178
95
979
755
828
822
74
318
520
805
205
439
316
749
479
287
147
309
445
814
620
366
566
585
761
365
911
177
740
92
161
129
416
895
760
323
935
412
942
664
404
303
790
468
868
402
247
917
610
397
903
613
772
325
82
262
902
376
471
106
84
367
358
883
637
227
332
731
467
411
900
76
954
441
647
741
636
248
250
400
639
563
473
223
609
145
217
992
735
766
963
407
451
624
396
917
830
172
722
778
348
477
690
703
628
692
959
908
246
760
210
152
980
504
154
204
692
763
265
336
300
409
284
595
809
133
96
554
957
522
869
308
241
969
789
468
521
763
972
756
780
974
261
162
153
963
874
64
891
869
920
756
194
102
331
602
969
931
496
514
154
211
799
608
985
718
277
822
533
365
870
887
918
851
471
927
602
956
403
782
556
928
597
263
998
835
526
551
330
979
907
381
700
821
521
270
983
201
527
296
512
217
908
537
574
185
402
163
633
716
178
141
481
754
418
139
260
445
802
242
786
95
387
963
471
170
583
623
553
680
229
864
487
865
277
195
253
127
586
886
101
192
497
387
466
199
535
670
909
686
522
353
579
209
486
260
348
241
84
362
873
388
819
987
528
388
772
704
74
508
914
315
807
853
127
543
852
648
748
275
274
346
610
248
720
147
579
832
709
513
213
523
710
63
835
431
507
61
142
669
587
629
737
181
392
153
94
189
707
121
777
222
667
206
905
90
136
136
940
78
265
125
127
227
715
819
129
965
95
926
744
402
430
827
874
518
135
677
877
670
200
507
344
302
752
72
244
849
138
116
505
251
641
298
539
725
955
279
370
120
443
256
365
241
211
363
570
497
91
869
591
148
787
849
204
85
772
94
906
79
227
649
935
609
140
203
455
545
867
814
598
926
128
853
437
61
442
103
255
994
865
190
199
548
945
679
670
458
94
269
86
971
71
957
628
454
597
740
517
579
580
263
578
294
286
446
686
211
603
699
950
603
192
179
943
384
716
186
439
891
319
361
179
756
424
893
758
427
538
583
568
380
412
976
665
878
133
889
667
109
434
857
283
969
74
793
479
616
195
719
376
363
360
926
572
962
519
919
349
855
719
158
88
654
436
655
333
506
234
273
717
369
726
932
739
562
977
419
498
167
182
174
381
795
876
760
712
348
955
768
363
369
369
422
336
756
363
455
689
442
414
166
293
502
715
621
540
848
922
109
186
977
975
827
75
110
743
662
308
858
77
475
187
649
90
360
733
618
1000
885
411
912
464
65
745
991
699
576
854
991
718
303
950
616
740
464
88
354
296
351
969
174
944
763
370
935
637
249
114
257
589
176
939
807
446
458
684
318
470
138
708
951
583
393
920
866
526
908
795
825
337
800
694
361
710
422
199
907
853
725
564
797
554
855
316
414
520
680
646
406
316
70
970
207
368
833
335
615
438
889
276
803
252
308
502
736
390
396
572
552
954
233
889
606
260
628
530
557
717
262
151
849
224
957
821
324
247
509
965
167
779
763
884
699
406
74
404
359
723
817
340
678
307
638
398
688
444
573
724
470
219
302
631
173
958
375
341
484
738
580
131
394
801
278
857
957
296
358
1000
231
292
998
805
560
213
776
397
410
430
852
504
159
235
314
855
563
628
81
542
520
104
331
743
359
529
304
803
249
184
64
60
460
254
394
892
841
705
307
305
552
468
704
100
584
660
760
716
66
591
291
321
128
317
787
925
75
609
994
803
721
87
260
438
540
324
444
353
837
130
745
398
450
122
422
615
247
916
856
533
413
800
540
772
764
269
841
346
614
851
746
995
213
759
528
552
485
904
817
548
884
768
772
417
716
992
145
132
619
165
464
118
74
98
849
591
195
518
350
290
452
698
926
440
659
115
603
560
779
860
909
465
677
303
261
786
920
889
662
292
316
197
167
748
142
100
663
507
291
375
676
711
181
236
195
783
630
963
828
665
639
864
400
354
887
856
618
848
533
947
970
99
830
89
305
136
428
953
175
384
532
905
975
909
589
413
538
908
790
157
955
525
608
549
208
312
243
788
511
257
89
516
175
878
371
998
206
542
585
126
252
84
858
758
455
95
178
893
130
814
846
616
890
534
991
529
780
482
989
190
439
313
972
752
700
677
470
764
913
157
832
126
649
398
64
721
688
398
854
776
794
99
797
669
335
371
924
915
895
347
121
458
85
665
355
659
509
274
330
923
409
817
844
678
170
986
100
472
397
889
750
486
235
117
480
609
284
466
913
189
370
264
727
276
725
883
105
926
579
460
949
411
397
61
439
740
631
834
112
405
706
577
101
856
437
622
480
134
653
928
278
994
714
63
71
797
799
930
881
357
208
173
666
573
371
866
558
89
61
216
685
807
631
617
271
606
412
545
510
797
276
411
375
474
524
474
965
710
122
884
215
945
100
819
891
504
864
356
901
292
966
892
849
911
616
246
259
832
662
251
681
118
986
213
269
751
290
688
807
418
776
424
547
883
78
846
726
796
416
673
947
297
433
140
836
518
926
956
935
661
506
762
522
522
598
895
464
489
895
507
971
134
185
848
492
651
967
490
555
827
477
533
806
755
378
565
780
277
838
798
845
354
584
751
908
290
927
146
276
931
198
697
333
352
201
987
188
831
448
661
403
553
124
468
853
204
94
95
949
707
201
373
312
102
831
207
251
234
567
405
193
874
644
591
360
268
727
770
544
159
630
409
783
912
723
899
721
524
890
370
459
799
665
610
968
302
360
62
559
691
148
278
822
477
264
579
430
747
71
883
262
730
804
797
456
960
243
154
722
888
484
70
925
846
187
688
289
633
339
286
975
910
498
200
350
121
274
210
918
901
694
880
465
757
704
152
189
698
202
643
706
424
78
191
891
943
554
384
91
149
117
979
209
559
371
320
480
267
88
935
169
784
713
749
108
550
521
236
90
219
171
169
626
244
384
602
910
660
883
422
356
955
263
622
920
260
514
262
588
80
562
390
559
524
497
770
706
69
751
443
96
567
426
526
110
894
153
745
781
223
138
405
60
290
319
86
405
807
922
913
740
629
152
614
615
454
901
449
326
839
428
885
911
107
260
888
381
401
893
744
341
804
879
498
869
896
959
815
414
676
343
716
548
771
316
783
758
152
892
205
819
246
767
141
233
539
730
654
541
839
277
759
839
197
445
298
731
693
348
649
842
313
837
575
970
89
271
991
360
221
931
686
139
678
67
687
840
468
309
714
785
81
124
403
109
217
309
362
912
703
465
526
809
765
541
348
107
820
432
632
582
676
888
124
832
588
376
619
698
450
584
327
531
914
339
497
670
261
933
263
389
692
853
495
590
209
321
678
342
191
223
575
210
926
221
853
402
546
930
391
423
602
310
272
91
939
208
695
432
242
867
797
658
288
625
656
295
662
284
789
839
996
110
999
877
567
582
540
974
899
440
800
639
327
575
466
309
984
608
970
351
690
871
588
435
463
815
860
381
168
375
922
359
793
376
89
836
443
190
738
154
134
443
153
193
77
404
200
206
151
364
634
840
357
613
634
751
945
761
247
270
716
967
636
705
864
472
357
423
164
453
657
877
635
176
393
741
698
549
869
271
910
409
523
565
349
103
928
244
876
795
787
275
937
199
517
804
581
500
680
910
147
680
500
700
870
334
654
222
253
756
489
850
769
125
233
252
984
256
378
835
587
345
769
389
682
442
86
864
467
311
690
530
749
393
188
995
119
835
402
710
902
864
136
552
628
504
379
458
357
223
802
230
650
884
218
954
339
602
442
757
403
266
357
903
152
379
639
376
707
494
467
952
89
466
988
631
852
176
272
521
244
394
954
382
531
108
589
153
409
130
664
679
556
88
484
815
93
334
737
567
864
416
898
382
776
782
831
148
995
858
236
905
785
507
780
533
532
469
990
756
114
243
898
180
499
526
392
216
209
750
233
655
237
831
894
476
347
480
941
728
359
950
186
122
312
717
302
963
701
827
168
87
999
282
649
609
842
943
290
628
674
126
795
360
1000
746
977
747
88
495
800
262
304
408
377
499
453
272
97
984
392
325
476
696
710
759
620
958
197
535
732
982
847
522
500
662
745
959
982
519
560
687
661
943
220
773
788
791
157
311
223
691
497
124
397
769
191
657
926
388
197
980
290
531
276
278
700
655
410
760
871
832
92
707
170
499
162
402
799
307
416
355
476
966
963
574
691
607
929
762
569
661
614
431
754
884
352
905
362
715
660
111
253
374
286
214
188
630
909
365
702
635
383
774
919
632
668
526
113
348
581
546
313
735
752
126
863
500
149
536
375
980
509
204
607
528
314
478
93
67
224
376
157
305
275
766
89
533
675
344
495
932
799
137
146
276
897
709
356
551
829
572
931
435
549
873
760
615
623
598
951
806
434
786
133
586
599
415
985
847
454
720
704
602
274
590
811
685
666
191
435
951
860
798
96
855
344
128
156
368
938
175
945
886
442
874
162
685
63
748
466
888
128
138
542
281
751
354
421
819
288
243
220
511
210
693
488
853
737
566
520
819
215
444
806
771
979
184
60
351
230
690
745
363
154
101
415
809
288
937
816
325
856
784
895
772
882
696
169
572
464
960
427
653
689
595
975
200
542
737
249
948
195
850
660
570
396
773
738
111
373
952
245
473
863
647
487
190
991
353
114
109
806
652
713
557
772
393
239
284
916
863
201
923
136
652
458
959
518
406
323
290
713
590
660
757
85
350
276
968
530
684
500
720
293
876
730
326
265
699
492
486
298
86
421
866
847
368
245
758
909
546
116
586
601
677
817
757
579
785
277
346
180
715
965
533
482
515
892
313
605
953
589
558
690
320
442
144
278
418
332
710
98
917
869
82
616
186
791
878
352
601
566
396
332
680
849
437
558
269
722
641
354
728
344
520
481
626
593
961
748
498
721
668
884
187
347
301
703
938
536
950
347
149
812
305
221
574
669
137
593
233
623
299
473
421
938
390
769
871
508
237
540
638
999
374
699
503
625
346
712
803
124
907
938
579
541
625
569
279
275
634
748
259
492
640
580
325
661
506
297
845
724
385
375
296
94
469
649
654
70
898
403
517
358
620
245
474
621
632
488
742
720
541
248
945
994
644
504
172
293
992
581
422
764
347
307
523
288
243
291
762
909
263
397
591
987
860
607
150
912
361
340
179
690
453
524
178
345
976
416
123
259
945
483
777
526
765
277
135
577
390
828
278
608
559
816
624
450
811
200
95
723
72
721
381
533
990
89
198
990
812
400
805
937
910
391
893
458
683
532
510
744
551
158
168
715
319
271
955
657
450
523
487
399
419
654
705
229
121
940
807
64
711
432
811
156
537
485
126
970
93
856
63
71
480
267
114
544
111
294
812
468
159
175
928
746
801
690
726
225
411
464
431
364
777
571
622
200
279
198
922
466
684
382
208
830
801
107
426
301
586
120
902
893
730
913
869
838
667
857
976
274
500
186
859
469
266
840
622
398
473
780
184
697
273
719
707
64
127
708
929
510
754
143
223
60
720
186
79
68
965
540
752
705
411
359
558
229
353
369
519
849
866
279
524
329
161
291
303
989
957
785
846
458
124
88
835
571
941
456
214
208
206
403
208
67
319
137
494
152
80
572
309
827
119
778
67
700
401
486
741
101
178
386
963
802
798
799
859
324
118
122
731
75
875
103
532
448
66
813
791
419
812
196
340
519
243
132
227
166
541
688
245
111
551
183
516
524
127
608
508
508
630
282
585
785
666
284
824
488
282
808
315
231
233
479
997
541
673
896
289
867
264
370
969
167
805
653
897
677
229
792
187
453
539
340
886
158
763
708
681
869
755
522
722
670
298
705
618
611
912
327
80
424
678
965
835
993
670
560
249
174
235
673
170
167
760
601
804
646
560
240
177
857
602
991
676
798
410
253
573
895
520
903
801
632
704
95
462
818
995
865
385
990
953
872
117
206
143
332
784
427
382
482
270
543
894
406
516
581
839
991
114
654
975
853
618
155
731
923
479
823
516
119
131
418
258
675
568
621
704
916
901
981
393
532
380
250
990
412
567
770
934
132
254
838
957
856
502
661
896
558
226
664
691
955
528
677
613
78
440
347
502
805
545
192
173
64
333
707
344
486
463
107
705
245
900
864
170
432
618
392
94
240
657
392
246
122
76
267
135
706
150
626
583
658
859
995
441
299
732
472
250
157
248
271
762
192
724
307
864
124
772
511
822
607
700
737
395
820
234
730
123
994
530
555
153
397
147
662
340
649
407
410
718
88
418
134
275
255
323
369
115
474
879
144
576
364
477
903
436
358
419
847
943
491
61
722
576
518
821
66
403
156
967
579
590
440
809
878
224
678
74
152
992
643
794
300
235
884
538
400
531
209
202
904
551
601
348
898
717
822
744
575
391
448
235
349
542
97
415
809
104
528
586
296
920
343
141
889
606
305
236
146
97
634
388
817
80
360
194
114
745
940
969
942
608
393
133
921
782
119
957
901
924
275
811
463
966
126
429
92
567
843
829
136
299
503
86
301
603
103
567
980
252
191
402
361
470
602
139
293
438
121
392
97
89
662
799
283
222
143
297
891
90
578
414
298
91
381
223
575
871
789
191
638
125
730
547
572
881
939
638
173
179
253
488
581
954
242
957
293
406
227
237
667
263
492
589
669
682
650
107
880
122
496
236
566
905
878
347
684
849
775
678
692
445
69
68
875
123
213
839
563
822
866
394
819
95
74
69
226
304
771
964
595
98
295
251
641
552
587
96
247
205
185
418
379
239
327
826
118
883
703
931
478
334
657
272
719
701
934
788
649
541
491
337
463
842
207
266
810
223
509
474
705
421
486
475
145
619
371
348
551
144
924
739
341
332
598
142
187
976
800
454
271
568
270
252
990
628
709
578
998
810
550
345
471
128
451
554
63
612
976
676
619
102
863
325
763
215
611
452
958
899
101
627
250
971
941
665
469
966
115
61
507
319
977
561
388
407
184
410
187
110
159
853
983
371
929
902
895
239
392
789
358
420
480
791
856
897
805
357
659
589
593
622
440
399
892
712
472
440
972
128
251
323
420
490
902
427
663
878
733
198
863
946
670
185
821
265
431
386
248
453
811
988
135
879
836
356
96
788
723
951
644
662
89
503
579
631
396
176
389
540
101
383
229
188
980
221
694
462
99
838
535
100
772
745
219
175
301
898
291
533
825
383
509
411
732
318
135
612
483
333
671
686
301
917
154
572
585
588
689
462
960
311
922
496
947
276
522
828
655
443
229
547
305
803
391
355
945
733
714
411
990
883
82
626
716
615
968
192
107
415
313
89
133
983
713
701
707
672
833
655
347
658
783
618
607
600
390
781
99
746
239
529
824
303
754
864
65
494
207
371
497
341
597
372
108
791
198
957
435
191
984
552
534
614
891
369
712
484
76
232
154
144
833
355
383
420
952
613
153
931
819
231
787
798
151
553
842
909
451
122
927
300
149
835
472
531
486
246
320
842
508
236
694
226
934
183
745
700
817
131
274
187
451
400
126
374
930
159
147
969
723
659
349
391
654
589
90
392
456
446
456
389
705
807
675
679
659
756
393
836
757
438
344
596
954
189
277
908
166
947
507
800
123
239
987
584
477
878
199
352
974
153
104
838
706
807
598
522
753
594
126
232
586
315
791
304
126
542
986
596
913
712
248
523
71
639
79
278
921
997
515
74
320
132
163
893
287
684
95
596
339
119
792
674
542
615
626
780
375
710
111
667
152
623
487
893
523
338
812
452
592
238
304
727
467
180
93
473
402
838
649
567
493
999
556
989
341
878
114
353
160
298
702
514
421
646
466
517
202
131
963
281
314
197
922
503
347
177
388
528
711
500
856
149
902
891
716
320
894
957
798
528
292
128
705
208
421
195
772
259
819
421
145
992
293
202
899
251
754
858
603
776
692
283
838
507
874
355
673
191
899
463
378
557
787
192
532
578
641
129
510
143
149
123
764
285
944
77
618
463
181
589
278
604
428
401
92
930
646
627
933
309
540
662
242
81
492
814
806
640
776
134
734
935
529
922
905
950
147
237
330
556
897
967
671
330
216
509
955
280
975
477
333
720
776
748
272
500
627
801
554
605
824
923
850
396
946
592
400
356
951
396
491
140
768
869
688
215
758
832
309
680
228
766
854
548
829
931
303
909
175
499
920
171
838
509
765
628
406
205
889
359
424
550
641
925
511
194
175
948
983
197
92
911
182
847
945
857
233
154
901
876
251
943
278
681
77
675
105
799
309
727
919
659
968
939
603
571
692
99
640
650
177
339
920
68
538
363
810
777
952
475
77
311
471
879
370
219
700
920
841
834
860
164
85
358
471
653
671
659
574
925
639
354
501
908
702
246
865
785
645
621
497
510
288
696
147
573
340
374
446
69
353
680
278
782
546
262
976
372
196
686
634
73
389
176
277
317
617
946
718
612
210
726
285
764
867
766
218
160
585
867
799
994
325
505
173
303
447
309
566
438
932
720
189
536
70
433
270
833
449
529
161
693
926
269
494
640
445
649
124
395
549
311
396
122
321
367
948
428
315
627
565
820
125
750
308
443
671
754
942
137
460
459
851
654
380
63
112
698
764
368
329
930
569
534
862
770
75
670
936
180
464
881
676
73
858
398
274
483
847
163
446
958
266
291
124
143
417
817
169
818
622
923
662
61
952
299
374
429
269
76
485
724
760
269
567
415
357
892
86
117
601
925
939
466
357
966
797
444
324
674
829
342
603
447
169
386
970
571
765
172
66
253
445
326
254
502
271
777
65
177
962
926
199
707
614
106
73
891
817
641
107
552
340
422
626
872
61
753
468
438
765
245
299
565
591
782
264
948
989
834
389
157
871
984
684
887
810
798
849
492
553
869
513
289
456
566
828
736
726
416
422
445
992
643
786
678
315
369
369
514
960
674
196
902
721
776
351
674
466
900
433
125
989
632
1000
427
652
992
341
819
679
297
96
588
392
629
263
862
188
777
338
249
909
87
516
706
649
233
451
954
590
276
183
724
842
97
94
388
340
778
704
720
453
760
636
414
424
174
691
828
628
879
422
642
532
841
299
759
405
546
341
874
706
716
266
149
235
472
537
565
716
704
391
917
569
88
835
468
504
985
477
413
823
562
908
476
75
758
745
603
772
63
860
700
260
927
676
902
484
779
727
311
162
172
727
639
407
747
793
337
422
63
435
400
934
430
187
591
752
285
110
286
800
546
247
605
654
676
848
856
494
895
731
635
742
277
505
678
572
913
972
666
458
176
920
454
923
251
848
249
628
552
501
667
937
438
711
426
802
358
645
338
943
304
152
720
601
348
836
87
260
168
585
166
792
489
777
222
661
907
351
781
593
170
456
863
776
407
795
124
965
246
231
604
121
688
143
209
361
178
660
598
461
799
732
280
821
547
442
523
637
405
816
570
101
664
189
277
548
739
432
791
139
447
223
609
927
375
157
166
102
157
326
740
515
865
127
545
646
438
96
719
577
584
271
441
449
581
727
752
117
174
577
111
588
546
624
103
804
673
608
411
848
999
65
208
413
203
105
496
735
907
109
692
784
376
712
971
826
958
530
793
989
668
539
457
87
172
501
671
756
887
406
137
310
953
303
999
574
953
132
895
787
849
685
277
630
198
187
548
959
439
891
905
678
786
653
196
274
111
232
329
837
990
306
482
659
943
887
335
482
877
144
592
138
544
997
987
962
67
739
580
304
818
944
255
916
998
865
538
463
403
826
952
185
985
680
932
157
259
490
418
956
848
133
675
478
830
524
366
672
706
588
255
165
728
562
340
65
484
66
667
805
117
147
741
651
412
511
697
580
686
392
133
922
443
154
192
309
104
77
804
947
747
952
544
161
920
507
160
804
654
226
125
770
329
271
725
680
535
105
709
586
375
284
916
814
340
571
625
744
849
946
884
562
793
843
785
120
388
331
87
264
569
378
895
178
509
355
576
439
448
367
826
422
86
745
603
306
629
654
367
146
806
523
968
235
374
664
265
657
870
127
853
884
605
627
148
642
382
910
590
853
256
474
811
136
494
97
720
592
104
637
641
640
837
932
292
249
567
649
628
109
554
87
824
133
156
487
134
741
400
854
496
272
243
746
105
457
640
780
651
437
187
855
881
323
541
753
386
783
544
199
317
738
273
604
489
507
683
277
717
248
343
79
232
486
832
334
445
937
135
823
770
504
732
537
209
475
589
732
83
413
122
381
886
686
988
103
268
866
809
351
969
452
950
261
135
606
594
767
951
598
96
975
728
579
506
391
413
910
795
460
182
375
918
513
133
562
189
309
745
749
920
95
502
495
613
299
438
244
718
673
818
167
612
259
187
444
934
639
747
693
242
616
808
515
347
689
799
96
446
798
325
964
849
955
391
314
319
841
571
609
410
277
867
138
223
395
612
270
172
592
598
916
566
353
63
253
530
352
799
245
915
272
363
126
672
436
459
442
719
777
867
931
836
257
301
227
628
124
819
716
527
406
205
99
236
580
356
999
844
63
427
776
661
884
254
349
164
644
816
519
220
118
250
256
561
529
830
117
649
114
81
808
831
453
636
848
179
694
371
820
195
864
543
522
370
423
517
334
519
325
890
83
983
963
218
194
820
646
579
527
764
147
480
255
608
403
614
507
908
518
130
907
973
206
112
98
1000
537
352
748
348
89
783
960
230
181
80
631
533
320
462
868
186
81
992
508
711
968
594
305
541
782
226
981
429
371
622
266
943
417
621
865
578
669
820
728
546
311
134
658
597
281
505
823
752
524
283
762
486
861
104
586
451
547
870
551
762
999
325
731
475
679
426
750
770
382
611
383
136
929
246
651
880
85
300
406
112
316
701
222
172
478
73
718
96
380
801
483
369
985
408
691
219
584
417
801
703
299
100
221
203
335
81
114
788
220
709
193
812
445
378
559
793
89
536
430
324
370
93
806
696
706
781
875
289
669
615
939
831
782
201
529
250
656
720
680
816
896
375
425
811
544
203
417
380
354
646
276
740
333
934
643
110
96
811
362
924
477
512
709
195
84
364
949
339
789
112
232
717
90
952
999
476
228
172
287
298
624
326
824
363
589
541
791
202
737
66
507
544
570
445
197
858
747
599
711
636
979
410
223
921
329
985
819
510
171
160
831
168
179
481
368
822
642
822
723
148
242
835
328
109
988
334
438
574
567
267
247
349
770
802
335
676
549
693
133
231
709
714
685
662
837
235
236
559
648
502
421
949
864
537
717
847
612
625
101
858
153
742
342
836
479
381
191
532
639
937
905
381
871
163
981
431
679
453
225
395
376
515
652
542
97
501
585
793
167
282
989
914
937
136
237
797
960
503
787
319
624
563
584
247
375
343
954
746
766
782
893
396
980
964
260
701
630
171
750
404
391
158
310
686
962
530
553
890
742
671
69
982
317
169
495
183
828
259
943
741
764
302
565
192
441
683
818
804
220
85
363
262
915
242
744
356
422
243
942
263
826
693
474
464
100
537
652
199
555
754
135
964
690
643
742
436
173
897
381
196
584
775
237
822
782
892
795
184
496
285
530
537
488
948
823
338
745
501
924
776
243
964
630
745
60
62
820
914
267
337
90
144
766
745
397
913
805
601
858
460
891
457
911
962
684
810
379
78
604
569
134
160
222
463
150
373
447
773
341
816
902
876
178
954
736
896
518
240
85
962
737
308
341
517
630
521
67
491
185
837
863
343
458
673
986
101
403
318
737
893
669
77
772
492
661
491
850
363
759
941
890
115
112
322
260
276
173
402
461
899
837
554
930
919
882
978
425
472
757
970
831
263
951
519
766
508
225
884
939
277
88
798
160
827
997
734
150
327
615
556
354
387
401
174
349
616
660
511
243
585
61
969
183
189
1000
459
510
900
808
128
927
134
770
692
402
61
767
826
337
312
723
866
217
779
933
572
815
726
364
240
139
747
946
876
330
381
156
776
216
894
790
505
995
855
391
925
959
209
279
482
640
104
794
991
847
466
461
696
463
913
110
995
785
283
513
245
809
282
209
995
541
354
518
456
819
990
112
825
370
585
410
81
674
211
545
915
195
328
600
177
231
209
900
415
991
101
453
228
149
804
501
770
917
536
624
275
900
238
492
565
468
631
71
799
183
75
826
245
998
664
312
566
930
741
567
351
186
414
119
960
959
355
86
405
762
557
922
504
162
587
489
884
468
809
352
750
418
385
371
377
159
462
858
519
516
766
669
444
926
469
458
838
221
255
822
280
876
358
893
604
838
971
933
772
845
241
915
503
458
768
861
463
951
299
671
971
328
186
269
256
265
602
573
527
924
942
996
63
297
319
327
927
352
965
248
612
930
967
384
481
64
885
813
721
499
118
894
748
569
581
172
759
430
480
996
64
454
470
872
784
142
673
286
657
263
897
347
589
349
609
305
299
527
749
845
624
282
577
913
90
486
134
507
323
757
840
562
816
976
300
861
871
70
592
724
818
925
538
769
462
248
687
521
557
645
337
317
62
114
275
681
109
534
283
929
463
569
458
736
624
379
479
335
383
890
553
293
863
360
559
585
817
663
664
123
857
601
117
67
580
851
118
854
961
825
210
506
377
717
716
490
971
937
744
901
118
104
872
412
138
852
999
385
434
919
192
301
945
286
443
850
478
556
249
991
412
635
443
860
796
765
609
852
265
414
63
165
861
413
650
634
252
954
334
184
735
169
498
901
295
637
570
712
907
101
801
834
835
955
105
96
114
814
775
231
131
605
504
271
491
891
97
569
673
983
84
355
869
891
554
434
815
463
855
89
425
683
851
791
785
873
67
490
137
694
690
320
358
952
968
741
233
174
795
537
628
368
661
232
98
771
486
950
387
953
728
454
632
414
518
636
425
490
633
601
472
846
900
180
939
832
884
447
446
188
314
364
254
497
329
65
416
829
914
314
730
510
572
302
700
139
426
255
874
449
429
985
198
644
565
370
824
66
965
757
786
292
570
85
502
149
339
366
795
787
137
185
601
368
667
124
213
681
913
589
243
262
811
616
298
775
891
171
937
274
459
440
430
686
746
784
906
896
823
599
381
481
250
592
993
387
884
681
795
371
873
795
947
383
150
299
917
780
417
876
268
660
504
924
325
297
121
826
750
478
581
581
381
60
671
931
274
582
540
254
195
701
909
457
113
141
379
309
691
63
955
559
818
703
147
559
268
127
621
916
495
461
419
295
310
329
581
440
381
193
664
193
433
605
647
450
703
631
520
910
852
989
62
192
596
596
892
130
148
482
780
141
810
475
884
691
767
430
582
88
175
122
225
696
1000
205
372
731
580
243
597
603
577
874
116
392
802
324
195
241
241
203
567
344
540
937
948
798
899
509
247
266
765
509
975
152
385
630
283
782
802
717
729
126
558
115
389
249
170
868
543
138
439
165
259
675
793
847
911
187
410
871
80
697
168
898
210
829
451
662
928
974
359
867
790
206
71
240
696
201
433
853
81
191
791
909
929
109
738
635
289
93
825
889
764
362
325
266
836
229
772
341
417
333
322
910
952
446
777
736
599
243
525
275
909
980
587
433
306
553
830
724
684
218
397
184
613
910
450
179
370
457
108
521
876
687
756
256
857
651
359
831
400
935
951
149
645
774
127
587
947
967
541
205
222
332
77
86
432
379
654
139
249
736
855
631
954
558
639
567
779
713
181
584
292
632
955
904
153
838
899
846
547
242
236
439
730
427
591
911
991
185
443
661
524
398
101
655
475
60
718
600
277
811
803
194
738
794
807
805
999
423
262
823
311
961
994
259
97
415
676
147
825
185
77
596
195
155
199
825
766
687
722
291
610
303
717
293
476
410
679
138
859
941
763
379
102
534
142
617
193
398
555
92
381
272
380
532
385
388
166
463
483
191
868
470
348
589
419
873
214
366
768
866
104
306
230
89
148
935
485
434
854
820
883
130
240
495
345
559
438
729
972
854
965
107
660
938
337
466
897
216
448
696
960
126
802
997
695
964
80
569
841
317
917
155
323
887
65
671
755
238
451
836
375
861
709
596
756
75
294
508
691
977
656
592
862
615
955
921
582
234
772
706
114
967
496
795
670
303
570
132
820
276
137
234
227
764
747
716
733
199
579
82
126
230
102
344
210
458
151
858
244
485
850
80
643
399
506
315
234
604
405
443
93
365
295
396
170
204
849
930
484
915
860
102
470
993
926
803
339
258
877
920
634
426
927
948
426
644
961
685
689
397
492
182
282
694
360
250
850
960
408
732
665
186
624
149
564
501
110
286
212
411
992
640
351
473
409
656
533
983
105
619
683
114
580
970
205
778
348
554
83
674
619
72
146
159
337
888
678
975
182
956
812
560
170
798
499
344
114
930
60
255
521
245
869
116
793
859
482
527
232
590
495
239
308
723
545
233
386
545
349
177
852
522
94
987
377
442
722
873
419
563
343
576
358
723
384
76
639
687
898
307
894
561
469
327
488
712
222
861
344
940
938
451
458
372
705
403
754
812
768
549
98
108
316
589
952
573
715
687
991
537
575
78
531
78
885
831
854
456
712
714
299
481
167
465
571
361
616
489
424
363
699
301
420
796
679
415
584
730
267
668
882
799
833
630
363
795
795
999
845
624
119
168
234
249
812
183
211
152
658
885
376
492
563
230
530
815
116
902
363
878
156
83
699
943
828
568
375
615
111
561
70
238
100
164
144
104
895
555
439
338
85
797
977
484
888
905
109
897
88
568
644
74
106
757
756
544
668
988
319
125
656
692
844
867
890
841
390
239
869
84
470
877
564
785
715
636
72
127
624
284
950
833
839
68
644
402
318
578
287
682
867
681
542
411
836
66
911
331
674
403
145
331
647
712
937
551
286
407
159
205
246
699
897
745
257
311
470
716
962
185
600
596
753
268
629
985
346
374
648
455
745
516
190
942
596
302
942
644
784
383
288
987
453
571
977
231
652
558
927
241
871
664
820
617
683
252
741
495
788
909
835
88
103
103
749
833
82
826
888
394
751
218
1000
551
449
282
597
853
665
408
518
426
277
908
252
439
260
208
76
224
723
219
341
538
732
398
489
696
938
406
758
500
512
154
793
709
402
235
182
419
838
647
362
618
502
738
258
375
548
231
118
526
160
379
323
276
102
985
537
299
154
810
295
334
320
657
771
367
665
731
889
274
475
878
850
369
280
974
432
598
917
648
694
903
613
903
610
390
945
163
640
246
728
438
990
706
191
512
467
451
173
835
467
76
408
681
563
576
800
762
441
184
443
887
682
471
847
923
916
170
923
860
751
724
835
665
919
541
157
891
65
487
169
631
975
751
710
973
628
700
963
664
65
585
949
889
905
480
845
655
700
514
324
251
245
299
101
828
701
812
356
252
197
131
191
739
877
866
680
285
296
821
409
829
545
688
721
131
849
905
761
547
396
503
923
506
314
966
355
945
842
220
695
339
423
322
219
972
374
66
509
857
688
998
557
321
781
126
860
851
154
834
990
583
184
814
246
877
367
676
95
693
878
175
70
334
186
673
444
597
264
742
675
113
636
959
883
441
123
666
957
653
254
488
170
62
196
873
265
689
304
344
128
195
253
873
833
790
198
735
730
745
712
93
390
468
836
376
469
647
715
478
978
145
219
173
90
69
92
495
797
801
525
276
493
468
200
220
873
181
92
935
941
735
68
478
604
184
126
956
673
333
967
577
260
338
312
1000
717
74
844
997
877
110
974
783
68
774
631
135
183
78
90
92
195
433
952
83
528
352
269
208
916
627
74
280
597
803
636
489
606
544
454
319
286
644
219
793
409
311
380
477
294
895
259
543
759
484
230
387
442
916
63
784
470
739
369
311
240
316
61
109
489
190
400
640
145
273
464
454
769
385
981
220
624
709
477
120
411
335
507
783
621
770
90
163
239
540
1000
519
233
543
838
612
265
272
368
839
886
153
617
702
659
139
462
773
369
926
436
99
667
157
458
965
381
692
378
811
665
248
214
207
482
637
78
279
285
790
418
373
223
165
131
298
988
242
762
570
263
641
915
332
481
687
347
69
61
129
127
945
104
274
632
162
186
388
89
975
343
108
758
895
275
320
262
808
626
466
253
236
881
960
226
682
577
369
125
765
107
938
309
986
867
743
260
998
365
87
429
491
499
568
479
461
731
702
197
887
730
226
284
436
859
514
104
885
229
300
583
895
599
745
287
627
312
214
231
265
880
961
829
985
942
132
950
624
857
313
358
903
129
638
721
604
80
788
179
906
779
595
896
767
801
395
163
215
94
258
711
863
420
232
788
850
217
434
972
326
666
982
471
689
160
294
530
482
364
316
643
633
953
733
206
750
739
325
185
627
626
653
686
830
215
615
771
742
414
476
397
769
601
378
874
860
500
412
582
693
485
782
708
274
468
194
241
386
342
216
546
428
337
192
351
64
648
988
281
455
565
241
345
720
589
678
899
812
144
502
965
665
785
199
783
75
626
607
113
217
334
573
410
122
627
289
400
99
61
515
781
258
312
81
146
535
881
130
109
585
874
594
684
560
907
147
182
424
391
857
376
215
323
158
634
883
818
293
252
195
181
958
287
380
640
318
700
617
697
542
327
247
379
949
965
487
859
630
992
764
140
707
224
614
565
74
131
651
296
507
987
78
616
615
678
323
286
164
342
250
191
317
856
362
831
69
252
337
605
226
605
435
524
682
951
401
405
984
122
344
441
463
538
263
946
605
609
217
360
526
219
469
292
974
873
978
614
148
858
970
259
872
669
129
74
957
657
995
70
421
577
961
308
413
769
514
360
728
902
942
955
783
134
629
85
604
453
851
746
974
570
284
543
157
319
267
621
111
995
397
943
558
806
635
933
483
405
342
416
473
81
708
684
190
120
220
881
366
951
334
518
246
384
938
322
383
386
619
194
769
445
368
468
306
301
201
667
533
113
918
140
146
68
263
465
72
254
748
872
551
880
740
892
706
718
202
794
723
450
833
270
665
860
596
393
187
209
439
231
761
872
384
881
638
258
492
252
655
281
101
139
659
114
642
800
503
129
252
782
574
397
169
195
899
621
643
775
661
263
116
123
597
359
934
226
693
635
185
162
428
317
468
747
80
942
908
930
696
799
859
271
384
950
371
311
922
470
436
76
903
754
618
448
535
574
630
277
982
128
140
155
663
619
508
367
400
367
251
923
84
752
336
317
857
391
295
341
488
614
533
213
209
437
82
343
368
251
678
764
225
430
615
530
734
949
859
643
395
716
776
592
270
255
958
454
372
262
239
636
304
487
129
693
520
991
145
581
569
504
726
569
604
479
539
561
290
590
483
338
867
163
269
680
169
75
678
193
927
670
150
888
225
452
163
981
739
177
721
218
165
217
999
74
584
616
697
355
462
201
63
133
836
324
788
673
528
955
859
953
405
712
371
677
556
920
575
833
811
485
278
900
222
941
191
608
346
179
117
569
94
302
752
494
293
205
79
559
776
818
816
650
860
975
539
642
430
893
305
680
496
190
582
362
263
564
406
310
667
285
135
358
777
584
602
921
211
579
599
953
70
896
375
917
539
655
686
339
884
991
255
693
709
952
961
971
342
448
577
298
549
331
740
954
566
881
880
290
912
440
410
589
565
807
449
75
99
173
830
332
488
615
763
316
918
615
936
206
459
966
293
251
546
598
412
220
187
601
189
979
692
355
745
304
213
689
160
690
523
493
850
399
385
579
463
344
710
375
111
724
368
662
418
187
114
603
716
989
192
175
382
317
175
412
807
720
565
386
780
115
659
990
420
535
265
984
267
733
783
783
885
828
939
488
834
834
555
206
784
381
731
753
279
602
164
216
410
208
919
502
541
821
382
81
449
943
799
751
873
285
362
964
989
726
941
203
865
728
560
717
700
299
936
921
248
872
124
136
849
143
947
473
127
657
497
962
762
536
493
361
899
847
279
919
575
863
333
814
972
819
854
264
314
842
915
298
267
982
766
421
451
484
125
240
702
158
685
349
262
258
589
301
712
437
504
211
537
619
409
649
907
785
734
810
420
738
748
294
432
186
143
968
187
861
430
318
505
133
790
800
276
693
863
209
583
1000
578
967
759
699
623
351
459
773
550
675
756
233
105
685
731
865
386
187
760
386
922
387
153
78
965
581
203
360
858
631
285
126
647
841
325
486
919
469
88
490
478
914
302
584
348
756
788
539
603
570
614
516
311
629
555
621
433
363
290
866
748
475
634
845
265
960
663
398
173
196
554
314
586
121
398
964
755
667
658
874
265
696
456
681
234
437
142
645
984
198
491
623
871
182
185
365
192
979
303
731
350
304
355
106
492
301
319
890
740
971
233
300
251
672
442
348
704
773
545
854
986
808
805
620
427
107
296
73
985
319
476
722
432
580
658
73
643
787
947
718
355
676
144
900
707
602
767
918
266
411
410
955
126
749
884
82
368
211
139
378
559
817
396
319
728
730
996
519
139
328
254
652
429
593
935
477
708
160
203
717
682
430
221
361
663
963
848
748
645
380
161
927
761
208
710
962
925
471
590
147
565
133
659
915
465
729
969
793
385
292
683
789
529
575
381
857
303
309
447
234
377
928
176
803
284
186
821
546
982
176
389
197
505
636
214
234
554
131
895
263
142
940
689
549
981
836
820
843
681
77
377
347
634
875
988
933
347
832
83
781
130
577
684
628
798
132
796
976
481
740
767
451
129
157
543
635
644
776
927
155
198
135
217
664
585
666
958
740
833
926
257
536
825
524
579
863
623
220
942
760
772
531
540
564
174
350
863
819
232
95
794
930
443
685
695
695
869
637
767
583
504
912
671
811
565
728
234
77
261
761
121
623
965
760
910
431
637
600
467
596
289
920
775
600
301
206
341
790
501
930
434
955
911
594
418
86
78
118
240
163
859
926
949
127
417
195
798
130
639
734
159
333
379
772
853
671
463
979
925
600
238
313
323
538
603
414
940
566
853
213
184
847
769
174
504
622
294
792
447
162
135
377
758
222
195
288
710
600
682
62
491
978
577
170
822
104
182
915
716
417
700
506
931
286
575
977
548
850
368
271
342
466
266
491
929
208
323
863
582
988
79
158
124
208
473
470
423
262
677
86
702
246
423
918
176
418
959
197
443
448
289
711
480
445
141
949
538
131
865
161
931
608
574
993
231
324
428
753
820
175
691
279
977
996
440
748
422
689
801
301
440
902
588
927
162
391
431
889
463
94
380
785
347
866
71
650
893
241
260
595
357
780
278
994
542
871
498
813
534
73
668
318
838
189
705
754
965
364
818
578
933
400
857
465
359
183
834
381
653
258
901
423
835
141
236
696
579
970
865
969
281
206
826
389
192
129
947
636
613
538
390
845
650
503
517
382
197
862
559
285
377
981
133
539
916
117
526
221
401
570
820
968
240
729
510
362
984
649
139
402
221
308
926
346
899
827
103
432
558
549
899
295
832
139
544
349
83
268
835
774
912
956
428
431
737
228
938
269
135
513
766
72
318
180
137
954
491
746
760
936
684
441
717
682
466
895
645
884
300
67
915
206
326
389
573
581
372
779
473
471
863
883
437
532
733
413
608
302
171
82
737
666
688
402
548
540
283
565
113
243
114
640
286
135
559
280
291
530
153
906
580
410
236
942
829
643
812
868
104
147
781
377
432
873
775
962
218
771
255
330
296
242
503
826
770
475
490
109
796
303
105
882
939
394
287
747
923
399
333
619
557
613
896
209
595
630
264
251
391
414
579
519
232
172
446
955
402
803
830
778
828
765
797
555
627
436
777
372
389
428
655
981
936
80
853
657
796
654
213
397
892
966
339
164
991
715
432
356
818
90
279
749
736
348
570
864
179
966
536
271
218
856
197
147
750
143
565
350
985
413
365
663
537
995
522
413
801
977
577
311
533
346
442
420
666
666
183
451
584
559
578
639
531
134
431
123
730
314
893
954
929
807
197
400
860
331
130
381
366
532
63
801
197
155
540
419
115
777
684
755
841
194
546
479
283
214
428
96
402
862
161
426
631
599
933
948
602
397
220
317
903
250
737
965
83
786
583
689
823
110
906
721
983
123
588
569
924
813
472
386
111
374
488
713
788
443
617
418
121
253
641
768
825
198
935
143
554
178
677
901
447
60
208
825
554
539
786
285
507
174
764
438
891
329
726
814
180
147
790
125
660
105
664
385
310
902
490
202
725
262
621
322
619
932
506
302
365
930
356
832
348
923
569
677
482
878
270
303
100
422
285
100
953
250
531
484
956
220
376
339
258
411
414
572
909
405
921
935
194
151
401
643
841
830
959
443
329
967
792
223
321
269
166
981
135
498
367
619
864
809
733
948
446
479
179
110
612
522
298
813
875
159
545
750
927
337
670
934
749
570
754
541
485
856
207
134
504
385
998
409
320
311
354
544
120
702
332
270
252
747
829
629
181
84
826
728
455
463
533
774
404
64
684
476
568
736
899
349
633
436
585
762
885
526
364
783
247
604
240
360
793
218
682
888
599
654
654
689
818
210
671
501
101
349
694
160
302
782
762
538
564
248
470
226
280
863
142
765
980
685
361
382
832
637
764
677
734
701
320
779
180
539
286
421
440
808
270
173
941
794
682
595
830
152
910
706
93
216
749
883
412
313
561
821
532
992
981
115
780
581
539
548
516
859
779
999
120
99
127
701
687
642
540
503
854
608
301
535
689
309
223
283
447
418
132
556
618
524
695
663
918
97
160
688
273
791
557
571
765
720
941
810
840
218
509
126
455
567
118
867
402
381
867
654
988
384
75
243
623
491
452
569
634
761
279
635
640
663
331
787
742
92
272
455
283
779
556
719
476
850
426
221
322
384
599
689
772
870
191
919
782
985
743
146
689
847
1000
66
580
228
602
934
243
174
621
543
862
516
948
512
896
264
61
471
192
641
879
479
610
866
228
892
962
252
465
477
420
242
570
548
660
429
470
692
519
689
368
769
201
120
937
121
683
848
879
764
104
755
565
664
304
810
805
851
721
636
634
651
996
202
336
566
958
776
831
79
522
682
290
522
199
508
487
661
956
225
523
405
434
629
627
977
641
582
825
907
235
666
415
133
720
159
495
514
117
381
429
126
587
291
578
903
366
291
66
220
711
255
507
187
649
692
713
388
982
942
291
667
833
885
843
281
506
578
749
108
284
708
336
847
176
112
327
716
955
684
591
419
152
690
926
316
519
884
386
256
748
780
301
747
68
678
849
857
641
439
159
102
752
852
362
589
447
957
554
508
358
430
355
990
821
92
814
947
820
178
526
253
508
772
930
662
514
415
960
439
224
793
483
823
179
962
362
910
796
438
407
644
152
341
377
766
278
423
529
167
889
497
332
781
259
480
148
807
258
450
112
371
998
765
298
575
496
370
875
746
912
950
519
281
197
945
471
129
750
505
686
246
502
186
615
248
982
996
670
271
894
683
968
938
478
845
765
860
265
653
891
116
658
755
627
652
502
140
89
716
648
739
316
313
494
333
970
832
276
308
553
170
937
169
179
855
148
367
76
784
694
243
809
668
518
131
298
560
733
996
305
502
633
268
664
583
662
498
99
664
986
720
596
650
978
830
779
842
177
882
364
975
375
197
279
191
157
737
359
572
939
899
928
517
543
923
586
232
474
351
824
598
682
507
970
961
741
481
954
660
657
223
904
217
653
404
128
556
683
862
422
346
842
610
107
91
770
543
579
417
622
237
276
881
872
784
855
147
395
876
923
799
513
516
302
989
663
801
783
714
902
213
392
960
243
491
587
448
1000
66
861
315
968
201
966
504
893
778
345
367
430
393
456
235
703
936
734
174
998
526
365
952
685
358
710
448
613
904
706
392
482
827
126
422
999
745
110
838
256
918
773
604
379
572
208
849
876
539
655
685
876
524
741
897
86
900
503
488
992
629
565
394
123
316
422
537
749
679
346
777
772
1000
140
892
816
435
383
130
134
475
808
985
114
753
110
424
419
284
442
376
878
446
637
296
121
417
98
677
187
509
209
814
139
654
520
731
893
488
887
608
265
135
122
653
651
98
405
84
978
550
485
753
148
953
926
778
279
234
155
172
693
103
737
804
360
216
482
875
825
534
96
779
207
300
234
408
278
560
319
869
506
601
887
106
571
921
677
202
951
139
623
798
613
920
292
728
987
563
374
92
973
836
476
576
441
526
572
860
301
123
549
174
707
292
91
222
419
307
739
771
165
761
529
878
817
723
195
846
724
400
963
836
863
665
980
534
277
723
826
699
570
783
110
497
139
735
362
677
281
684
707
83
585
406
770
81
682
103
837
286
981
953
105
195
596
279
618
546
536
848
879
879
531
102
642
498
339
247
531
998
636
74
95
746
150
931
738
120
602
70
777
184
300
346
166
155
250
76
416
376
482
202
569
384
710
764
947
515
402
574
415
670
200
291
326
368
623
204
444
568
149
789
462
187
870
582
655
602
450
453
899
867
471
718
96
951
852
765
956
882
754
507
816
477
548
938
403
154
567
886
221
612
298
601
953
833
949
829
720
819
271
914
458
707
428
340
200
450
954
854
496
401
933
214
651
364
333
171
798
201
817
713
477
746
737
993
869
326
700
518
907
438
732
350
618
353
471
738
673
449
609
514
70
661
185
880
595
500
700
167
914
281
237
374
751
828
141
756
894
317
668
499
101
274
899
657
957
238
609
70
215
140
384
882
390
675
328
394
152
742
260
847
392
696
964
303
519
542
645
214
828
136
154
539
387
389
331
970
227
144
694
112
551
272
400
626
73
536
150
930
370
626
952
251
478
901
626
784
556
737
838
661
529
485
503
809
290
375
415
763
594
887
899
745
123
505
843
65
644
110
764
604
136
840
906
523
403
875
106
446
353
156
720
192
80
121
507
872
311
233
893
763
741
501
427
433
624
736
279
579
518
225
902
999
597
679
485
690
380
687
618
244
662
798
796
474
543
191
133
678
637
209
154
624
874
618
858
795
905
679
908
590
862
619
166
739
251
585
823
598
286
592
965
159
69
144
635
142
349
475
169
517
730
711
755
950
599
751
440
680
829
108
408
354
74
491
205
873
741
544
135
930
1000
549
852
263
522
470
126
174
981
424
656
478
138
867
776
284
493
547
771
194
900
542
887
163
870
987
828
398
616
907
462
175
107
967
538
941
431
449
495
511
591
210
204
884
193
805
817
75
789
416
671
844
643
280
406
976
881
197
391
568
67
449
259
987
87
170
361
859
986
570
623
882
563
715
795
949
280
348
74
159
719
530
496
584
1000
903
156
694
536
730
913
320
139
768
877
230
849
815
713
802
822
349
301
898
311
258
824
908
354
385
248
499
496
600
984
474
699
309
446
382
576
617
830
379
588
307
194
988
852
903
371
486
695
604
816
466
772
623
974
808
377
680
228
595
217
854
392
892
710
152
826
925
238
433
185
832
945
269
590
277
348
808
567
62
435
238
668
368
277
397
1000
417
942
645
954
946
131
60
145
452
851
348
802
866
154
207
455
508
326
716
593
525
93
887
260
388
873
380
795
469
90
696
295
72
191
221
211
789
564
279
266
645
790
719
260
99
382
623
767
272
459
642
434
610
99
833
645
333
767
436
564
954
792
459
154
435
333
920
265
455
294
708
264
405
89
697
813
550
972
534
313
534
872
981
616
272
717
963
434
832
862
687
570
656
294
451
300
526
361
193
963
550
999
376
179
724
90
685
119
680
640
933
336
334
315
383
358
758
526
770
219
274
715
836
648
211
450
578
417
788
124
415
849
317
485
109
365
643
155
538
130
716
862
578
647
86
430
65
513
865
678
610
851
423
279
61
716
838
381
87
529
84
294
879
936
306
417
594
524
782
295
559
551
309
601
720
600
386
931
873
604
798
249
477
222
609
507
832
600
808
781
223
442
890
827
897
582
400
883
461
138
857
944
652
924
811
62
274
883
282
950
350
81
712
296
458
742
935
889
520
443
442
488
526
603
448
421
220
747
521
503
281
312
208
932
974
161
729
836
744
242
555
989
275
663
880
885
228
69
151
670
727
225
875
428
798
879
382
861
671
817
494
960
826
647
974
974
794
910
939
935
720
495
482
143
839
714
588
873
649
636
444
936
235
735
671
460
882
221
948
361
165
764
575
402
270
870
795
925
936
213
836
728
104
396
499
340
304
266
523
102
926
513
622
589
271
911
816
750
913
386
241
428
972
556
521
911
614
836
688
69
319
930
254
63
194
597
928
516
750
876
290
273
924
65
582
107
618
453
782
731
313
498
895
989
860
640
654
422
913
378
239
300
264
233
388
797
398
733
569
912
665
160
339
116
339
615
592
306
371
645
697
146
914
597
120
805
663
857
512
998
840
799
613
930
171
757
108
638
630
189
990
545
591
406
953
71
684
582
673
110
886
349
833
69
785
821
650
926
740
245
315
911
237
149
64
658
247
297
889
613
371
836
776
319
666
534
720
290
927
602
640
702
524
574
760
953
216
93
595
412
485
291
819
802
180
134
961
956
833
429
927
490
923
826
441
936
342
322
642
973
682
981
609
781
266
456
823
829
329
86
766
733
613
537
770
544
355
519
957
801
980
570
841
277
848
922
622
565
112
657
417
852
399
952
142
426
213
267
69
898
489
959
338
900
166
674
852
683
495
438
290
175
371
552
830
354
737
881
740
308
157
359
539
644
851
334
890
854
553
476
419
391
510
288
493
376
67
413
153
914
281
958
522
346
555
122
984
202
720
357
783
406
265
98
475
988
760
850
798
208
876
617
757
452
503
376
999
708
953
409
164
922
457
692
509
930
148
345
815
746
217
132
488
506
886
520
849
339
540
651
416
83
965
162
454
102
67
912
691
513
244
417
226
771
345
768
197
831
395
369
303
347
546
131
123
373
338
709
235
917
401
393
546
447
218
276
527
990
400
393
414
904
362
340
952
541
105
695
389
76
483
262
293
112
348
509
104
617
886
811
952
968
308
955
859
809
261
939
684
792
713
100
656
722
739
690
364
695
295
982
410
958
738
638
89
543
169
98
340
278
153
559
761
661
784
327
922
849
893
721
446
162
512
577
495
538
874
959
693
685
619
890
721
484
209
116
872
638
971
289
155
837
748
270
964
841
861
727
447
378
866
676
499
518
168
941
977
980
593
494
455
463
532
783
274
805
215
786
705
94
874
170
334
213
739
983
577
70
621
116
691
381
626
63
312
963
919
662
979
756
327
586
254
533
905
530
67
780
73
471
387
241
289
862
444
516
205
221
83
848
305
755
188
574
546
445
263
777
538
946
679
612
254
903
493
674
127
355
106
121
910
95
701
63
510
885
892
994
221
895
651
523
583
81
88
248
91
363
843
505
869
934
470
73
989
139
297
208
960
381
823
84
129
179
258
376
993
298
557
675
382
708
564
850
348
564
407
369
330
356
900
150
660
956
840
707
104
578
651
714
978
267
216
376
832
830
67
344
723
907
497
505
449
145
181
750
226
310
892
76
848
899
62
633
389
797
145
608
102
844
181
827
422
224
95
231
920
904
290
806
987
670
66
956
662
888
884
301
647
135
774
284
437
732
816
249
730
255
919
184
687
462
812
947
916
884
185
620
473
184
912
997
243
486
1000
182
756
558
280
662
159
437
782
118
716
454
296
70
781
837
80
934
284
873
848
72
538
352
338
226
166
912
835
767
362
762
187
221
889
573
980
972
929
972
820
892
371
904
719
744
399
178
832
186
92
391
98
387
982
448
68
802
114
331
248
541
738
488
237
141
485
656
316
317
334
647
546
559
750
690
714
562
589
557
721
638
630
872
148
88
221
653
802
146
491
558
899
706
98
110
350
464
692
278
462
941
199
891
160
428
968
260
271
972
408
359
926
547
262
195
902
941
433
359
636
604
665
362
944
443
907
906
802
589
123
367
663
669
903
305
967
561
640
218
594
561
335
62
624
101
166
791
582
108
612
760
683
196
962
320
895
450
108
548
390
148
278
880
838
771
678
758
140
484
412
656
893
589
100
612
622
417
736
486
377
233
374
323
886
453
441
412
194
258
448
989
362
854
988
395
185
258
967
907
158
807
527
758
721
189
192
456
701
792
952
603
451
940
904
128
222
422
589
896
314
798
607
508
841
403
100
165
348
392
328
709
136
417
921
93
557
881
328
768
717
691
341
119
687
98
854
497
525
573
869
499
554
366
546
266
958
105
404
587
373
295
273
871
820
625
446
960
93
978
511
656
715
335
195
302
507
734
333
575
628
813
645
925
176
415
971
857
797
414
211
197
504
294
683
660
692
920
530
114
411
465
148
736
286
266
103
311
326
145
578
652
540
900
632
194
317
547
128
140
665
464
848
87
736
964
321
406
474
523
212
151
867
753
852
281
891
715
250
470
724
263
195
943
95
85
987
643
519
428
228
372
1000
81
288
718
158
722
174
410
664
150
350
442
572
364
640
373
482
746
514
938
632
585
100
353
925
740
738
253
389
220
461
773
219
865
861
499
194
540
645
671
948
334
315
249
778
534
383
580
318
201
862
804
679
76
175
795
451
607
931
743
778
461
560
962
473
60
945
89
819
952
784
717
761
607
277
257
957
429
108
136
713
831
80
441
473
544
923
821
873
98
541
535
448
205
174
329
673
538
440
66
90
161
658
64
498
722
691
938
95
135
102
232
98
654
920
903
770
342
564
790
245
576
807
348
248
642
848
836
564
474
604
653
103
95
380
429
906
132
667
733
64
442
94
945
203
164
719
713
650
725
303
790
436
434
968
269
483
530
73
806
370
554
444
392
990
889
861
260
985
62
256
329
901
902
799
617
432
216
773
668
190
943
350
127
612
805
536
459
949
741
439
573
795
601
287
770
471
214
233
492
496
117
829
287
598
481
606
138
506
733
111
185
515
841
290
782
809
619
245
211
723
859
628
154
415
881
200
623
683
344
670
792
715
833
943
463
538
978
546
170
839
636
448
720
854
496
686
518
275
334
863
785
741
367
585
513
726
129
606
554
843
998
612
105
341
215
202
125
714
290
313
326
92
862
634
95
267
123
853
400
225
740
535
793
81
294
711
821
466
496
922
74
834
834
434
424
301
780
823
818
639
296
106
213
767
534
90
62
820
896
729
460
335
117
914
533
559
361
852
714
313
905
686
342
266
292
515
926
168
74
335
288
761
298
774
993
798
188
333
926
697
949
540
527
896
426
631
538
985
900
602
606
482
722
564
152
659
999
470
565
485
911
801
879
481
841
704
224
802
371
993
476
922
245
855
842
359
759
986
94
374
167
936
562
515
719
512
936
516
125
166
74
597
399
599
524
449
544
851
599
640
506
587
512
201
368
247
423
938
918
836
317
475
762
287
181
776
116
316
886
773
321
379
830
495
810
523
115
198
144
403
925
253
135
149
601
826
876
247
355
598
707
268
275
741
94
585
161
684
239
408
273
993
334
288
575
497
455
752
255
682
167
638
332
323
308
663
902
597
358
990
143
904
666
861
179
161
276
658
784
352
187
135
456
553
991
475
248
189
264
369
788
306
991
576
915
519
461
825
138
427
305
678
974
226
849
395
756
838
711
182
814
970
801
307
218
871
820
115
981
766
253
614
85
296
775
220
223
490
388
728
712
428
318
695
715
810
373
822
340
374
756
815
434
652
894
113
266
183
255
927
650
843
664
712
156
92
876
406
736
397
162
922
451
877
520
220
709
686
277
475
321
145
127
210
213
897
794
368
946
817
309
533
181
252
92
514
442
392
770
990
544
202
192
736
931
514
824
605
890
222
226
115
164
890
946
523
331
183
167
568
517
387
241
573
958
533
643
755
791
786
869
218
286
312
84
370
269
431
777
600
711
546
887
818
415
506
706
687
91
924
393
992
280
883
571
152
434
135
157
669
689
749
572
853
624
336
369
326
295
179
929
350
604
422
369
79
227
175
559
515
175
328
801
855
83
389
892
126
875
203
569
742
341
440
570
600
964
439
258
230
625
419
603
284
425
110
949
663
518
573
777
249
908
265
623
875
861
965
775
608
649
194
217
732
174
582
164
891
474
985
493
638
949
295
913
860
880
305
338
249
415
735
146
73
727
307
925
326
523
104
480
911
372
137
610
396
952
635
236
483
220
670
463
126
665
128
318
902
714
769
814
439
333
173
768
473
587
695
713
944
834
180
817
575
251
544
767
307
598
386
982
381
561
458
332
535
722
817
272
676
244
457
153
883
551
548
137
201
864
121
932
584
84
507
439
819
117
166
916
137
959
874
263
939
104
364
514
751
335
104
170
993
588
606
352
500
280
545
214
457
479
562
887
942
510
790
812
361
592
903
198
386
576
961
151
137
823
466
297
559
512
300
936
900
593
794
910
655
999
913
710
521
783
734
996
556
112
328
451
145
872
412
190
331
240
785
970
906
788
311
567
468
695
119
546
99
309
859
502
919
181
450
